簡體   English   中英

如何知道exe的安裝路徑?

[英]How can I know installation path of a exe?

我正在制作C#程序,我需要找到計算機上安裝的某些軟件的安裝路徑。 我需要使用的是程序名稱(例如Google Chrome),進程名稱(例如Chrome.exe)。 我現在需要的是Chrome.exe的路徑。 如果我要通過程序名或進程名作為搜索參數,如何使用C#查找路徑? 實際上,我想執行一個自定義操作,該操作將找到chrome.exe並調用一個鏈接。 之后,我將使用搜索chrome.exe的路徑,並且我想默認通過chrome打開一個網站。 我該怎么辦..?

要考慮的另一個選項是使用Process.Start()啟動鏈接,並讓操作系統使用默認的瀏覽器打開鏈接。 那可能是用戶期望的。

在WiX工具WixUtilExtension ,您可以使用WixUtilExtension ShellExecute標准自定義操作免費獲得該行為。

你可以嘗試這樣的事情

public string GetProcessPath(string name)
{
 Process[] processes = Process.GetProcessesByName(name);

 if (processes.Length > 0)
 {
    return processes[0].MainModule.FileName;
 }
 else
 {
    return string.Empty;
 }
}

或者您可以使用Linq

or you could do what you do but use linq

     Process element = ( from p in Process.GetProcesses()
                where p.ProcessName == "Chrome.exe"
                select p ).FirstOrDefault( );

但是,可以有多個同名進程。因此,您必須根據需要進一步修改代碼。

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM