我希望能够从另一个可执行文件启动ClickOnce应用程序。我知道如何使用Process.Start(“http://PathToMyApp”)在浏览器中执行此操作。但是,这将为进程返回null。因此,我无法检查以确保进程已启动或稍后终止进程。
如何启动点击一次应用程序并获取其进程ID并确定它是否成功启动?
答案 0 :(得分:3)
您必须找到ClickOnce应用程序的快捷方式并对其执行process.start。这是一个例子:
string shortcutName =
string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Programs),
"\\", PublisherName, "\\", ProductName, ".appref-ms");
process.Start(shortcutName);
其中PublisherName和ProductName是在您要启动的应用程序的“发布”选项卡的“选项”对话框中填写的那些。
如果以这种方式启动,也可以将参数传递给ClickOnce应用程序,即使它处于脱机状态。 Here是一篇文章,告诉你如何做到这一点,以防万一你也需要这个功能。