2010-04-25 44 views

回答

25

Environment.ExpandEnvironmentVariables。如果您控制註冊表值的創建,請將其作爲可擴展字符串存儲在註冊表中,並且註冊表API將自動爲您擴展它。

+0

我需要一個完整的目錄路徑,它可以是任何其它的環境變量,而不僅僅是%COMMONPROGRAMFILES% – Faisal 2010-04-25 07:11:50

+2

我不明白您的評論,@Faisal。 'ExpandEnvironmentVariables'將擴展它在你提供的字符串中看到的任何環境變量,並且會在你引用問題的特定情況下產生一個完整路徑。 – 2010-04-25 07:17:39

+1

行得通。謝謝 – Faisal 2010-04-25 07:20:03

18

可以使用Environment.GetEnvironmentVariable功能:

string commonDir = Environment.GetEnvironmentVariable("CommonProgramFiles"); 

然後可以使用Path.Combine到路徑的其餘部分追加:

string fullPath = Path.Combine(commonDir, "System", "web32.dll"); 

另一種選擇是使用Environment.ExpandEnvironmentVariables。這將與他們的價值觀取代所有的環境變量:

string fullPath = Environment.ExpandEnvironmentVariables("%CommonProgramFiles%\System\web32.dll"); 
+0

當然,覆蓋'Path.Combine'只能在框架的v4中使用 – 2010-04-25 08:07:17