从web启动winform程序

最近有个客户提出想从网站上启动一个客户端的程序,研究了下,实现方法如下:

1. 注入注册表

      try
                {
                    string appPath = "\"" + Application.ExecutablePath + "\" \"%1\"";
                    string strKey = Application.ProductName;
                    string strKey_shell_open_cmd = strKey + @"\shell\open\command";
                    var subKey = Registry.ClassesRoot.CreateSubKey(strKey);
                    subKey.SetValue("URL Protocol", "1");
                    var subKey_shell_open_cmd = Registry.ClassesRoot.CreateSubKey(strKey_shell_open_cmd);
                    subKey_shell_open_cmd.SetValue(null, appPath);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(string.Format("Web启动参数设置失败, 原因: {0}", ex.Message));
                }

 

注入后效果如下图:

image

%1是传入的参数

 

2. 网站上加一个link

<a href="HelloWorld://123">Hello World</a>

这里123是传入的参数

 

image

 

当我们点击这个link时,就会自动打开这个客户端软件。

posted @ 2014-11-15 13:58  疯吻IT  阅读(4788)  评论(22编辑  收藏  举报