我希望在c#中編寫一個程序,以確定在哪個目錄中安裝了操作系統。C#程序知道在哪個驅動器中安裝了Windows操作系統?
我的意思是在某些系統中它是在「C」型驅動器中,在某些系統中是在「D」型驅動器中。我想知道在C#編程語言中有沒有什麼方法可以知道OS安裝在哪個硬盤驅動器上。
問候, 西娜斯迪胡
我希望在c#中編寫一個程序,以確定在哪個目錄中安裝了操作系統。C#程序知道在哪個驅動器中安裝了Windows操作系統?
我的意思是在某些系統中它是在「C」型驅動器中,在某些系統中是在「D」型驅動器中。我想知道在C#編程語言中有沒有什麼方法可以知道OS安裝在哪個硬盤驅動器上。
問候, 西娜斯迪胡
嘗試
System.Environment.GetEnvironmentVariable("WINDIR")
更新:您還可以使用SpecialFolder.Windows
但你可以看到here它也返回值對應到%windir%或%SYSTEMROOT%環境變量。
或者試試這個
Path.GetPathRoot(Environment.SystemDirectory)
Environment.SystemDirectory
(msdn)
Path.GetPathRoot(Environment.SystemDirectory)
使用
string windir = Path.GetPathRoot(System.Environment.GetEnvironmentVariable("WINDIR"));
將返回C:\其中窗口是在C盤
這是更掩蓋*和*更容易f可比使用Environment.SystemDirectory,IMO。 – 2012-04-27 06:40:38
也許吧。但%WinDir%使用非常普遍。它保存Windows安裝的路徑。 SystemDirectory另一方面保存到System32文件夾的路徑,它稍有不同。另外,我會採用像GetWindowsDriveName這樣的方法來隱藏所有這些東西。 – 2012-04-27 06:56:37
有許多「非常常見」但破碎的東西。 SystemDirectory和SpecialFolder.Windows都是更好的選擇,IMO。 – 2012-04-27 07:29:38