通过web端浏览器来打开客户端的应用程序,如同迅雷链接,点击打开迅雷客户端下载一样,
要打开自定义客户端,必须先要在注册表中注册该客户端(exe、dll)等
1:注册注册表
注册注册表有多种方法:
//C#写注册表RegistryKey key = Registry.ClassesRoot.CreateSubKey("vip"); key.SetValue("", "URL:vip Protocol"); key.SetValue("URL Protocol",""); RegistryKey Subkey= key.CreateSubKey("DefaultICon"); Subkey.SetValue("", "exe文件路径"); Subkey = key.CreateSubKey("shell").CreateSubKey("open").CreateSubKey("Command"); Subkey.SetValue("","exe文件路径");
#python 操作注册表 import _winreg key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER,r"Software\Microsoft\Windows\CurrentVersion\Explorer") #删除键 _winreg.DeleteKey(key, "Advanced") #删除键值 _winreg.DeleteValue(key, "IconUnderline") #创建新的键 newKey = _winreg.CreateKey(key,"MyNewkey") #给新创建的键添加键值 _winreg.SetValue(newKey,"ValueName",0,"ValueContent") #来源: (Python 操作注册表) http://www.cnblogs.com/JeffreySun/archive/2010/01/04/1639117.html
或者手动添加注册表
这段代码是在 注册表 HKEY_CLASSES_ROOT 下新建vip 的键 结构是这样的 HKEY_CLASSES_ROOT vip (Default) = "URL:vip Protocol" URL Protocol= "" DefaultIcon (Default) = "F:\www\aaa.exe" shell open command (Default) = "F:\www\aaa.exe" "%1"
将下面的reg代码复制,另存为test.reg 可直接导入:
##########################################
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Vip]
@="\"URL:Vip Protocol\""
"URL Protocol"="\"\""
[HKEY_CLASSES_ROOT\Vip\DefaultIcon]
@="\"F:\\www\\aaa.exe\""
[HKEY_CLASSES_ROOT\Vip\shell]
[HKEY_CLASSES_ROOT\Vip\shell\Open]
[HKEY_CLASSES_ROOT\Vip\shell\Open\command]
@="\"F:\\www\\aaa.exe\" \"%1\""
#########################################
在web端,创建a链接:
<a href="vip://123-MonacoGP-19279-Senna">打开我的自定义应用</a>
点击链接就可以打开外部的自己定义的应用程序了.打开应用程序时还可以获取链接传过来的参数
上面 command 项的值为 "F:\www\aaa.exe" "%1" ,这个"%1"是传递给aaa.exe的参数。
转载来源:http://www.cnblogs.com/zjneter/archive/2008/01/08/1030066.html