找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
楼主: S8F8ry

一个支持在其他程序中打开网址的工具

[复制链接]

5

主题

26

回帖

1296

积分

金牌会员

积分
1296
发表于 2026-8-22 11:20:58 | 显示全部楼层
@S8F8ry
这小工具使用多年,近日发现一个 BUG
一个 Vue 构建的图片网站,获取一组图片地址压缩成 base64
创建一个虚拟的链接地址,用工具传递到爬虫代码解析然后下载
但发现链接超长时,无法启动程序
但关闭浏览器时,有时会启动程序开始下载……
请老大抽空测试一下,
回复

使用道具 举报

12

主题

1万

回帖

2万

积分

超级版主

(^^ゞ

积分
28631
 楼主| 发表于 2026-8-22 13:38:29 | 显示全部楼层
ngbanyan 发表于 2026-8-22 11:20
@S8F8ry
这小工具使用多年,近日发现一个 BUG
一个 Vue 构建的图片网站,获取一组图片地址压缩成 base64

应该是因为本地用于调用其他程序的那个 host.exe 在传递命令参数时至多只支持 32767 个字符,而通常一张图片转换为 base64 后都会远超出这个长度,所以它是无法启动程序的。感觉用命令行来传递图片的 base64 本身就不太适合 🤪
¯\(°_o)/¯
回复

使用道具 举报

5

主题

26

回帖

1296

积分

金牌会员

积分
1296
发表于 2026-8-22 18:21:46 | 显示全部楼层
S8F8ry 发表于 2026-8-22 13:38
应该是因为本地用于调用其他程序的那个 host.exe 在传递命令参数时至多只支持 32767 个字符,而通常一张 ...

没有压缩图片本身,只是将多个图片链接压缩,30个地址大概800个字符
直接测试过程序超长链接解码是成功的
是浏览器端 host 无法启动窗口
诡异的是关闭浏览器后,有时会被启动
回复

使用道具 举报

12

主题

1万

回帖

2万

积分

超级版主

(^^ゞ

积分
28631
 楼主| 发表于 2026-8-22 22:15:14 | 显示全部楼层
ngbanyan 发表于 2026-8-22 18:21
没有压缩图片本身,只是将多个图片链接压缩,30个地址大概800个字符
直接测试过程序超长链接解码是成功的 ...

你是用空格还是逗号之类的来拼接的这 30 个地址?在插件传参的配置有使用双引号括起来没?
¯\(°_o)/¯
回复

使用道具 举报

5

主题

26

回帖

1296

积分

金牌会员

积分
1296
发表于 2026-8-22 23:19:35 | 显示全部楼层
本帖最后由 ngbanyan 于 2026-8-22 23:25 编辑
S8F8ry 发表于 2026-8-22 22:15
你是用空格还是逗号之类的来拼接的这 30 个地址?在插件传参的配置有使用双引号括起来没? ...

所有图片地址提取共用部分的前缀以减少字符数,再组合成字符串用 LZString 压缩;
生成一个虚拟的链接,如:https://a.com/{encode},用 host 传递到 node.js 端解码;
虚拟地址是无空格或逗号的,并且有双引号包裹;
少量图片时可以启动 CMD 窗口;
大量图片则无法启动,关闭浏览器有时会启动 CMD 窗口;


测试了一下,链接字符数应该是超过 1024 则无法启动?

进程中有 host.exe,关闭浏览器进程后,CMD 窗口才出现,然后 host.exe 进程退出。
回复

使用道具 举报

12

主题

1万

回帖

2万

积分

超级版主

(^^ゞ

积分
28631
 楼主| 发表于 2026-8-23 11:29:09 | 显示全部楼层
本帖最后由 S8F8ry 于 2026-8-23 11:53 编辑
ngbanyan 发表于 2026-8-22 23:19
所有图片地址提取共用部分的前缀以减少字符数,再组合成字符串用 LZString 压缩;
生成一个虚拟的链接,如 ...

是我的问题,host.exe 里处理消息用的默认缓冲区,查了下现在默认缓冲区是 1024 字节的,所以消息内容超过 1KB 就消息阻塞了,导致变成现在这样需要发送消息的进程退出使得消息终止才能继续运行 🤪


以下是修正了这个问题后的 host 程序:

host_x64_v1.1.1.zip (339.97 KB, 下载次数: 310)

host_x86_v1.1.1.zip (340.13 KB, 下载次数: 325)
¯\(°_o)/¯
回复

使用道具 举报

5

主题

26

回帖

1296

积分

金牌会员

积分
1296
发表于 2026-8-23 13:00:32 | 显示全部楼层
S8F8ry 发表于 2026-8-23 11:29
是我的问题,host.exe 里处理消息用的默认缓冲区,查了下现在默认缓冲区是 1024 字节的,所以消息内容超过 ...

测试后完美!
这小工具特别实用,用来加速 Github 下载,采集图片,甚至可以调用下载软件
非常感谢版主!!!
回复

使用道具 举报

12

主题

1万

回帖

2万

积分

超级版主

(^^ゞ

积分
28631
 楼主| 发表于 昨天 22:45 | 显示全部楼层
顶顶
¯\(°_o)/¯
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|百分浏览器论坛

GMT+8, 2026-10-10 07:09 , Processed in 0.013661 second(s), 7 queries , Redis On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表