当电脑安装完 Steam 后,我们在浏览器中访问steam://run/123,浏览器会自动提示打开 Steam 程序。类似的功能在迅雷、QQ 等产品上也都有使用,本文讲述如何实现该功能。

实现上述功能只需要在注册表HKEY_CLASSES_ROOT项下添加对应的子项即可,以注册test协议为例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\test]
@="URL:test protocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\test\DefaultIcon]
@="mytest.exe"

[HKEY_CLASSES_ROOT\test\Shell]

[HKEY_CLASSES_ROOT\test\Shell\Open]

[HKEY_CLASSES_ROOT\test\Shell\Open\Command]
@="\"D:\\sourcecode\\mytest.exe\" -- \"%1\""

修改完之后,在浏览器中输入test://start/123就可以打开D:\\sourcecode\\mytest.exe,并且传递给mytest.exe的命令行参数为test://start/123