You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无需MSIX安装程序,如何为网站应用注册指定URI链接处理?

无需MSIX,通过InnoSetup注册应用处理指定HTTPS链接的方法

完全可以不用MSIX,通过InnoSetup打包exe安装程序时添加注册表项,就能让你的应用处理来自https://myapp.com/开头的链接,兼容老旧系统和域策略受限的环境。核心是利用Windows原生的URL协议关联机制,针对特定主机注册处理规则。

具体实现步骤

  1. 编写InnoSetup注册表配置
    在你的InnoSetup脚本中添加[Registry]段,注册特定主机的HTTPS链接处理规则:

    [Registry]
    ; 注册myapp.com的HTTPS链接标识(当前用户范围,无需管理员权限)
    Root: HKCU; Subkey: "Software\Classes\https\myapp.com"; ValueType: string; ValueName: ""; ValueData: "URL:MyApp HTTPS Handler"; Flags: uninsdeletekey
    Root: HKCU; Subkey: "Software\Classes\https\myapp.com"; ValueType: string; ValueName: "URL Protocol"; ValueData: ""; Flags: uninsdeletevalue
    
    ; 设置点击链接时启动的应用路径,%1会传递完整的链接地址
    Root: HKCU; Subkey: "Software\Classes\https\myapp.com\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\YourApp.exe"" ""%1"""; Flags: uninsdeletekey
    
  2. 关键参数说明

    • 用HKCU(当前用户注册表根)无需管理员权限,适合域内受限电脑;若要全局生效所有用户,可替换为HKLM,但安装时需要管理员权限。
    • {app}是InnoSetup的内置变量,代表应用安装目录;YourApp.exe替换为你的实际应用文件名。
    • Flags: uninsdeletekey确保卸载时自动删除对应的注册表项,避免残留。
  3. 应用适配要求
    你的应用需要支持解析命令行参数——也就是接收安装程序传递的完整URL(即%1对应的内容),然后做后续的业务处理。

  4. 生效与测试
    安装完成后,重启浏览器或触发系统协议关联刷新(可在InnoSetup脚本中添加代码调用AssocNotifyShellChange函数),之后点击https://myapp.com/xxx格式的链接,系统就会自动启动你的应用并传递链接地址。

这个方法完全依赖Windows原生机制,不依赖MSIX,兼容Windows 7及以上所有版本,能满足老旧电脑和域策略受限环境的需求。

内容的提问来源于stack exchange,提问作者Alberto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 01:52:43