js打开电脑本地程序

200 阅读1分钟

注册表文件 - 运行 myParams.reg

  • myParams:
    • 电脑注册表中生成该文件夹 (6处同名)
    • 运行该文件后,注册表目录 HKEY_CLASSES_ROOT,会有一个自定义(myParams)目录
  • "D:\Program Files (x86)\dsxd.Client_x64_v2.1.0.28\dsxd.ClientAPP.exe",0"
    • 需要打开的软件的本地地址
  • .reg:
    • 后缀为.reg,可以直接管理员运行,自动执行文件内容。在注册表中共执行

    myParams.reg

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\myParams]
"URL Protocol"=""
@="myParams 工具" // myParams:电脑注册表中生成该文件夹 (6处同名)

[HKEY_CLASSES_ROOT\myParams\DefaultIcon]
@="\"D:\\Program Files (x86)\\dsxd.Client_x64_v2.1.0.28\\dsxd.ClientAPP.exe\",0"

[HKEY_CLASSES_ROOT\myParams\shell]

[HKEY_CLASSES_ROOT\myParams\shell\open]

[HKEY_CLASSES_ROOT\myParams\shell\open\command]
@="\"D:\\Program Files (x86)\\dsxd.Client_x64_v2.1.0.28\\dsxd.ClientAPP.exe\",\"%1\""

注意: ① 蓝色下划线是协议名称,6处的名称必须一致; ② 红色下划线是默认图标,一般是可执行程序的绝对路径; ③ 淡紫色下划线,可执行程序的绝对路径,后面可以带0个或1个参数,上图的“%1”就是参数; 保存为“注册表项 (.reg)文件”,例如:myParams.reg;

js 代码执行,打开指定地址的软件

  • 链接地址的格式是“协议名称://参数”
  • 根据程序决定是否需传参数:
    • 本机程序可能需要接收多个参数值,此时可以把多个参数值以某种格式组合为一个参数,例如上图中:用半角逗号分隔多个参数值;本机程序接收到的参数是“协议名称://参数/”,比链接地址格式多一个“/”,请本机程序自行解析拆分接收到的参数

需要使用 a标签的href,其他根据 框架路由的自行测试

a标签点击后,网页效果