Web 网页直接打开 Windows 软件

日常开发中,经常会遇到需要在浏览器就可以直接引导用户打开软件的功能,例如国内的迅雷、QQ

一般桌面软件分不同的操作系统,如 Windows、Linux、MacOS

 

效果如下:

 

以 Windows 为例:

其实原理就是通过到 Windows 注册表添加规则,然后使用协议打开本地电脑的可执行文件。

注册表(Registry)是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。

HKEY_CLASSES_ROOT:启动应用程序所需的全部信息,如扩展名,应用程序与文档之间的关系,驱动程序名,DDE和OLE信息,类ID编号和应用程序与文档的图标等。

 

步骤如下:

创建注册表文件 open_software.reg

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\my_custom_postman]
"URL Protocol"="C:\\Users\\Ryan.Zheng\\AppData\\Local\\Postman\\Postman.exe"
@="Postman"
[HKEY_CLASSES_ROOT\drivereasy\DefaultIcon]
@="C:\\Users\\Ryan.Zheng\\AppData\\Local\\Postman\\Postman.exe,1"
[HKEY_CLASSES_ROOT\drivereasy\shell]
[HKEY_CLASSES_ROOT\drivereasy\shell\open]
[HKEY_CLASSES_ROOT\drivereasy\shell\open\command]
@="\"C:\\Users\\Ryan.Zheng\\AppData\\Local\\Postman\\Postman.exe\" \"%1\""

然后直接双击打开这个文件就可以直接将信息写入注册表中

 

 

 ps:注意注册表里不懂的内容不要随意删除,不然可能会导致你的电脑无法正常使用。

 

然后 HTML 使用 a 标签的 href 属性,格式为:应用名://参数

<a href="my_custom_href://xxx"></a>

 

posted @ 2020-04-15 18:29  Ryan_zheng  阅读(4077)  评论(0编辑  收藏  举报