各位 op
公司的一个需求,之前是本地装好了这个软件.exe ,浏览网址上有一个连接点击后会打开这个 exe
现在老板想的是,点击这个链接后,浏览器去下载 exe 软件,然后去安装这个 exe 软件安装好之后打开,安装这个 exe 的时候还需要安装一些插件,浏览器能实现这个吗
我能想到的就是早期点了一些少儿不宜的网站会给你下载一些奇奇怪怪的软件(好像是安装了的),类似病毒的东西,这个实现的逻辑是啥
1
Configuration 29 天前
思路错了
我这里是在 exe 里实现一个极简的 http server ,设置为开机启动(常驻右下角),然后从浏览器里发送 http 请求到 127.0.0.1 执行对应的指令 |
2
mickerwx OP @Configuration 意思就是电脑上先起一个类似系统服务的 http 服务 A ,浏览器的的原来打开 exe 的连接改成向 A 服务发请求,A 服务是一个本地的服务然后去执行下载安装命令以及打开 exe 服务 我的理解对吗
|
3
mainjzb 29 天前
> 浏览网址上有一个连接点击后会打开这个 exe
如果软件已经安装,可以用 url 启动。例如 steam 启动游戏。或 磁力链接唤醒迅雷 https://stackoverflow.com/questions/24455311/uri-scheme-launching > 安装这个 exe 软件安装好之后打开,安装这个 exe 的时候还需要安装一些插件 这个可以实现,需要管理员运行安装包即可,如果是要给浏览器安装插件,浏览器会弹出来提示,点一下确认。例如 IDM 的浏览器插件 |
4
mickerwx OP @mainjzb 提前安装好软件,使用链接打开这个软件,这个已经做好了, 现在的需求是我们把 exe 安装包放在服务器上,原来的链接点击一下,浏览器开始下载,下载完毕后进行安装,安装成功了打开
|
5
Configuration 29 天前
@mickerwx 就是在你们原来的 exe 软件里面,写一个 http server 进去,提前安装好,提前后台启动。然后就能实现从浏览器上点击打开这个 exe
|
6
zzzyyysss 29 天前 1
你想一想,我给你个链接,你打开后会下载一个 exe 还会安装运行。这怎么可能?
早期那时候应该是 ie6 吧 ie6 有漏洞可以实现以上需求,现代浏览器不可能。 |
7
zzzyyysss 29 天前
打开特定协议的链接,调起本地应用是可以的。但是不能一键实现 下载 安装 运行。
|
8
DOLLOR 29 天前
建议不要想那么复杂,都装 exe 了,都运行 exe 了,那么就把剩下的工作都转到 exe 里干。
|
9
mainjzb 29 天前
已经安装好了软件,管理员启动什么都能做。你说的这些感觉就像个更新。
(为什么楼主要一直围绕着浏览器。看了一圈这里和浏览器没有任何关系,直接像 360 给你安装小鸟壁纸一样安装上不就得了。 |
10
NoOneNoBody 29 天前
@DOLLOR #8
你理解错了,OP 后面几句都是为了完成“公司的一个需求……”这句的,并不是点击前已经装了某个 exe |
12
mickerwx OP @NoOneNoBody 对 安装软件通过浏览器打开这个软件 目前已经实现了 但是前提是需要安装好这个软件 新需求是安装这个软件的操作是不是也可以放到点击链接的时候实现
|
13
mercury233 29 天前
@mickerwx #12
那就是 ActiveX ,近 30 年前的技术,现在想用,相较于让用户下载文件手动打开,可能要麻烦十倍 |
14
IvanLi127 29 天前
做不了,除非你们已经在目标机器上已经有一个软件作为后门。
静默安装这可是大大的安全隐患呀。 |
15
thunderw 29 天前
|
17
bbchannails 29 天前
卧槽你要写的代码多了去了, 模拟 ui
|
18
cybort 29 天前 via Android
可以是可以,不过是跑在沙盒里面的,我觉得类似一个 webapp ,不如直接用 web 实现。
|
19
cybort 29 天前 via Android
而且 ClickOnce 需要浏览器支持,不是随便哪个都能用的,可能绕一圈回来变成了给浏览器安装插件再点链接启动😂
|
20
ibinary 29 天前
1.插件可以拉起本地 exe 参考 ndm idm 等
2.我可以静默安装插件到浏览器(支持市面占有率浏览器) 3.关于 2 是核心技术.简单提一嘴. 如果有帮助可以让用户去安装下然后尝试拉起 exe. |
21
cybort 29 天前 via Android
@ibinary 他不只是拉起本地 exe 的问题,本地都没有 exe ,等于说插件要绕过浏览器安全机制给你安装一个 exe 。所以这个插件实现的应该是一个应用框架,然后在线获取配置和脚本才行。考虑到造轮子的必要性,不如参考下 chrome 应用去做。
|
24
renmu 29 天前 via Android
那浏览器安全团队可以全部毕业了
|
25
chqome 29 天前
应该实现不了,没必要搞这个,用户自己知道下载到哪里了,双击运行就行了
|
26
jadeborner 29 天前
需要写个注册表,URL Protocol 的地址填下载地址,自动跳转到自定义协议唤起这个下载的 exe 进行安装
|