在嘗試偵測應用程式是否存在時,您正在使用`FileInfo(
System.Environment.GetFolderPath( System.Environment.SpecialFolder.ProgramFiles) + @"\MyInstalledApp"
)`。雖然此方法對於 32 位元 Windows 版本來說足夠了,但它在 x64 Windows Vista 中遇到問題,它會檢索 x64 Program Files 資料夾而不是預期的 Program Files (x86) 位置。
為了解決此問題,我們需要找到一種程式方法來擷取 Program Files (x86) 的路徑,而無需訴諸硬編碼「C:Program Files (x86)"。
以下函數恰當地滿足了此要求:
static string ProgramFilesx86() { if( 8 == IntPtr.Size || (!String.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432")))) { return Environment.GetEnvironmentVariable("ProgramFiles(x86)"); } return Environment.GetEnvironmentVariable("ProgramFiles"); }
此函數在三種不同的情況下可靠地返回x86 Program Files 目錄:
以上是如何以程式設計方式確定 64 位元 Windows 中的程式檔案 (x86) 位置?的詳細內容。更多資訊請關注PHP中文網其他相關文章!