在.NET中,是否存在與Windows Vista和Windows 7計算機上存在的「where」命令等效的命令?我需要解決安裝時在系統路徑中定義的可執行文件的硬路徑,而不是每個人都使用默認安裝路徑安裝所有文件。.NET等價命令提示符「where」命令
目前我稱之爲「where」命令作爲外部進程,但是這隻適用於Vista和Windows 7機器,這對於開箱即用的XP無效。
在.NET中,是否存在與Windows Vista和Windows 7計算機上存在的「where」命令等效的命令?我需要解決安裝時在系統路徑中定義的可執行文件的硬路徑,而不是每個人都使用默認安裝路徑安裝所有文件。.NET等價命令提示符「where」命令
目前我稱之爲「where」命令作爲外部進程,但是這隻適用於Vista和Windows 7機器,這對於開箱即用的XP無效。
您必須讀取環境變量PATH,並在每個路徑中查找應用程序的存在並使用它。這是怎樣的PowerShell命令get-command
作品,以及 - http://technet.microsoft.com/en-us/library/dd347726.aspx
注意:如果通過which
/where
獲取路徑的原因是使用的路徑和調用可執行程序,你不必這樣做,因爲執行已經在路徑,你需要得到的路徑,然後明確地使用它。
可以使用System.IO.Directory.EnumerateFiles()方法來搜索文件 下面是一個例子
System.IO.Directory.EnumerateFiles(Environment.SystemDirectory,"YourFile.exe",SearchOption.AllDirectories)
它返回一個包含路徑(S)的字符串數組。
「System.IO.Directory.Exists」將單個參數作爲輸入,它是目錄的路徑並返回true/false。你從哪裏得到Exists方法的定義? –
簡答題:沒有。你是否從'Process.Start'這樣的東西調用了這個其他的可執行文件?或者你想把文件/東西放在文件夾中? – user7116
我使用Process.Start()調用可執行文件。 –
您可以使用System.Environment.GetEnvironmentVariable編寫函數來獲取路徑,然後自行搜索您要查找的可執行文件的路徑。 – Kibbee