admin 管理员组文章数量: 887018
最近由于项目需要实现一个类似迅雷从浏览器触发下载链接的功能,于是研究了一下怎么从浏览器中打开本地应用(仅限windows平台)。
首先上网查了一些资料,然后发现这个功能的实现主要跟注册表有关系。需要在制作程序安装包的时候,写入一些注册表信息。我首先是在注册表中找到迅雷的注册表,如下所示:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\thunder]
@="URL:迅雷专用链"
"EditFlags"=hex:02,00,00,00
"URL Protocol"=""
[HKEY_CLASSES_ROOT\thunder\DefaultIcon]
@="D:\\xunlei\\Program\\Thunder.exe, 1"
[HKEY_CLASSES_ROOT\thunder\Shell]
[HKEY_CLASSES_ROOT\thunder\Shell\Open]
[HKEY_CLASSES_ROOT\thunder\Shell\Open\command]
@="\"D:\\xunlei\\Program\\ThunderNewTask.exe\" \"%1\""
这个注册表中跟我们要实现功能有关的就只有俩行,“URL Protocol”="“和
@=”“D:\xunlei\Program\ThunderNewTask.exe” “%1"”。根据我的理解第一个应该是让应用程序支持URL协议启动,第二个应该是一个带参数的命令行,用来从命令行启动程序的。所以要想实现这个功能,只需要在制作安装包时添加一个如下的注册表文件:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\name]
"URL Protocol"=""
[HKEY_CLASSES_ROOT\name\Shell]
[HKEY_CLASSES_ROOT\name\Shell\Open]
[HKEY_CLASSES_ROOT\name\Shell\Open\command]
@="[程序安装目录]yourprogram.exe %1"
这样就可以在浏览器启动了,如图所示:
版权声明:本文标题:如何在浏览器中打开windows应用程序 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1727323214h1101682.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论