从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时,就会自动打开这个客户端软件。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM