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_ROOTmy_custom_postman]
"URL Protocol"="C:\Users\Ryan.Zheng\AppData\Local\Postman\Postman.exe"
@="Postman"
[HKEY_CLASSES_ROOTdrivereasyDefaultIcon]
@="C:\Users\Ryan.Zheng\AppData\Local\Postman\Postman.exe,1"
[HKEY_CLASSES_ROOTdrivereasyshell]
[HKEY_CLASSES_ROOTdrivereasyshellopen]
[HKEY_CLASSES_ROOTdrivereasyshellopencommand]
@=""C:\Users\Ryan.Zheng\AppData\Local\Postman\Postman.exe" "%1""

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

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

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

<a href="my_custom_href://xxx"></a>
原文地址:https://www.cnblogs.com/ryanzheng/p/12707182.html