关于浏览器在本地安装软件并打开的问题

57 天前
 mickerwx

各位 op

公司的一个需求,之前是本地装好了这个软件.exe ,浏览网址上有一个连接点击后会打开这个 exe

现在老板想的是,点击这个链接后,浏览器去下载 exe 软件,然后去安装这个 exe 软件安装好之后打开,安装这个 exe 的时候还需要安装一些插件,浏览器能实现这个吗

我能想到的就是早期点了一些少儿不宜的网站会给你下载一些奇奇怪怪的软件(好像是安装了的),类似病毒的东西,这个实现的逻辑是啥

1780 次点击
所在节点    程序员
26 条回复
Configuration
57 天前
思路错了

我这里是在 exe 里实现一个极简的 http server ,设置为开机启动(常驻右下角),然后从浏览器里发送 http 请求到 127.0.0.1 执行对应的指令
mickerwx
57 天前
@Configuration 意思就是电脑上先起一个类似系统服务的 http 服务 A ,浏览器的的原来打开 exe 的连接改成向 A 服务发请求,A 服务是一个本地的服务然后去执行下载安装命令以及打开 exe 服务 我的理解对吗
mainjzb
57 天前
> 浏览网址上有一个连接点击后会打开这个 exe

如果软件已经安装,可以用 url 启动。例如 steam 启动游戏。或 磁力链接唤醒迅雷
https://stackoverflow.com/questions/24455311/uri-scheme-launching

> 安装这个 exe 软件安装好之后打开,安装这个 exe 的时候还需要安装一些插件
这个可以实现,需要管理员运行安装包即可,如果是要给浏览器安装插件,浏览器会弹出来提示,点一下确认。例如 IDM 的浏览器插件
mickerwx
57 天前
@mainjzb 提前安装好软件,使用链接打开这个软件,这个已经做好了, 现在的需求是我们把 exe 安装包放在服务器上,原来的链接点击一下,浏览器开始下载,下载完毕后进行安装,安装成功了打开
Configuration
57 天前
@mickerwx 就是在你们原来的 exe 软件里面,写一个 http server 进去,提前安装好,提前后台启动。然后就能实现从浏览器上点击打开这个 exe
zzzyyysss
57 天前
你想一想,我给你个链接,你打开后会下载一个 exe 还会安装运行。这怎么可能?
早期那时候应该是 ie6 吧 ie6 有漏洞可以实现以上需求,现代浏览器不可能。
zzzyyysss
57 天前
打开特定协议的链接,调起本地应用是可以的。但是不能一键实现 下载 安装 运行。
DOLLOR
57 天前
建议不要想那么复杂,都装 exe 了,都运行 exe 了,那么就把剩下的工作都转到 exe 里干。
mainjzb
57 天前
已经安装好了软件,管理员启动什么都能做。你说的这些感觉就像个更新。
(为什么楼主要一直围绕着浏览器。看了一圈这里和浏览器没有任何关系,直接像 360 给你安装小鸟壁纸一样安装上不就得了。
NoOneNoBody
57 天前
@DOLLOR #8
你理解错了,OP 后面几句都是为了完成“公司的一个需求……”这句的,并不是点击前已经装了某个 exe
mickerwx
57 天前
@zzzyyysss 确实 我也觉得这个应该是实现不了的 浏览器控制操作系统 那太危险了
mickerwx
57 天前
@NoOneNoBody 对 安装软件通过浏览器打开这个软件 目前已经实现了 但是前提是需要安装好这个软件 新需求是安装这个软件的操作是不是也可以放到点击链接的时候实现
mercury233
57 天前
@mickerwx #12
那就是 ActiveX ,近 30 年前的技术,现在想用,相较于让用户下载文件手动打开,可能要麻烦十倍
IvanLi127
57 天前
做不了,除非你们已经在目标机器上已经有一个软件作为后门。

静默安装这可是大大的安全隐患呀。
thunderw
57 天前
mickerwx
57 天前
@thunderw 是吗 我瞅瞅
bbchannails
57 天前
卧槽你要写的代码多了去了, 模拟 ui
cybort
57 天前
可以是可以,不过是跑在沙盒里面的,我觉得类似一个 webapp ,不如直接用 web 实现。
cybort
57 天前
而且 ClickOnce 需要浏览器支持,不是随便哪个都能用的,可能绕一圈回来变成了给浏览器安装插件再点链接启动😂
ibinary
57 天前
1.插件可以拉起本地 exe 参考 ndm idm 等
2.我可以静默安装插件到浏览器(支持市面占有率浏览器)
3.关于 2 是核心技术.简单提一嘴. 如果有帮助可以让用户去安装下然后尝试拉起 exe.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1084661

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX