0

如果我将两个单独的 C# Windows 窗体应用程序发布到服务器,并且用户在他们的计算机上安装这两个应用程序,我将如何让一个应用程序通过单击按钮调用另一个应用程序(可能带有参数)?

我真的不了解所有这些发布和清单业务 - exe 似乎并不实际存在于用户的 PC 上,所以我怎么可能用代码调用它?如果我知道它在哪里,我知道如何调用 exe.... 但它在哪里?

请帮忙!

谢谢

4

1 回答 1

3

我假设您在谈论 ClickOnce。ClickOnce 应用程序之间是完全沙盒化的(除非您使用 FullTrust 运行)。

如果两个应用相互了解,您可以使用 ProcessStartInfo 对象执行 Process.Start,该对象将 UseShellExecute 设置为 true,并将 Filename 作为第二个应用的 .application 文件的完整 Web 路径。即使尚未下载第二个应用程序,这也将确保它可以正常工作。您可以在查询字符串上传递参数并从 ApplicationDeployment.ActivationUri 获取它们。

不过,这有点 hacky - 您可能需要考虑是否可以合并这些应用程序......

于 2009-10-22T16:56:52.317 回答