一千萬個為什麽

搜索

從C#啟動ClickOnce應用程序

我希望能夠從另一個可執行文件啟動ClickOnce應用程序。我知道如何使用Process.Start(“ http:// PathToMyApp ”)使用瀏覽器執行此操作。但是,這將為進程返回null。因此,我無法檢查以確保進程已啟動或稍後終止進程。

如何啟動應用程序單擊一次並獲取其進程ID並確定它是否成功啟動?

最佳答案

您必須找到ClickOnce應用程序的快捷方式並對其執行process.start。這是一個例子:

string shortcutName = 
  string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Programs),
  "\\", PublisherName, "\\", ProductName, ".appref-ms");
process.Start(shortcutName);

其中PublisherName和ProductName是您要啟動的應用程序的“發布”選項卡中“選項”對話框中填充的那些。

如果以這種方式啟動,也可以將參數傳遞給ClickOnce應用程序,即使它處於脫機狀態。 此處是一篇文章,告訴你如何做到這一點,以防萬一你也需要這個功能。

轉載註明原文: 從C#啟動ClickOnce應用程序