如果我将两个单独的C#Windows窗体应用程序发布到服务器,并且用户在他们的计算机上安装这两个应用程序,我如何通过单击按钮让一个应用程序调用另一个应用程序(可能带参数)?
我真的不了解所有这些发布和清单业务 - exe似乎并没有在用户的电脑上实际存在,所以我怎么可能用代码调用它?如果我知道它在哪里,我知道如何调用exe ....但它在哪里?
请帮忙!
谢谢
答案 0 :(得分:3)
我假设你在谈论ClickOnce。 ClickOnce应用程序完全相互沙盒化(除非您使用FullTrust运行)。
如果两个应用程序彼此了解,您可以使用ProcessStartInfo对象执行Process.Start,该对象具有UseShellExecute设置为true,并且Filename作为第二个应用程序的.application文件的完整Web路径。即使尚未下载第二个应用程序,这也将确保其正常工作。您可以在查询字符串上传递参数,并从ApplicationDeployment.ActivationUri获取它们。
这有点像hacky-你可能想考虑是否可以组合这些应用......