最近遇到服务器调用客户端程序相处的思路
1.在程序中写一个添加注册表的程序
2. 把客户端要调用的程序写一个URL协议
3. 在HTML中调用
C#程序如下
设置URL协议时调用形式"名称:参数" 例如 “KuGou7New:xxxx”,无参数 “KuGou7New:” 和超链接一样调用
//修改注册表
//打开名称的注册表
RegistryKey riapp = Registry.ClassesRoot.OpenSubKey("KuGou7New");
if (riapp == null)//如果没有则创建一个
{
Registry.ClassesRoot.CreateSubKey("KuGou7New");
//设置
Registry.ClassesRoot.OpenSubKey("KuGou7New", true).SetValue("URL Protocol", @"D:\KuGou7\kugou7.exe,0");
RegistryKey widget = Registry.ClassesRoot.OpenSubKey(@"KuGou7New\Shell\Open\Command");
if (widget == null)
{
Registry.ClassesRoot.CreateSubKey(@"KuGou7New\Shell\Open\Command");
}
//默认值设置
Registry.ClassesRoot.CreateSubKey(@"KuGou7New\Shell\Open\Command").SetValue("", @"D:\KuGou7\kugou7.exe");
//关闭对象
widget.Close();
}
//关闭对象
riapp.Close();
页面中调用
<script type='text/javascript'>
function Start() {
window.location.href ='KuGou7New:';
}
</script>
</head>
<body οnlοad="Start()">
注:页面调用时不要漏掉冒号