更改「Program Files (x86)」的預設位置不起作用

更改「Program Files (x86)」的預設位置不起作用

我透過編輯登錄機碼更改了「Program Files」和「Program Files (x86)」的預設位置:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion]
"ProgramFilesDir"="E:\\ProgramFiles\\64bits"
"CommonFilesDir"="E:\\CommonFiles\\64bits"
"ProgramFilesDir (x86)"="E:\\ProgramFiles\\32bits"
"CommonFilesDir (x86)"="E:\\CommonFiles\\32bits"
"CommonW6432Dir"="E:\\CommonFiles\\64bits"
"ProgramW6432Dir"="E:\\ProgramFiles\\64bits"

對於 64 位元應用程序,它運行良好。

但對於 32 位元應用程序,此配置不起作用!所有應用程式都嘗試安裝在“C:\Program Files (x86)”中,我需要手動更改此位置。安裝到“E:\ProgramFiles\32bits”(存在)後,應用程式運作正常。這些應用程式是:NVIDIA 驅動程式、VMware Workstation 12、VLC、Steam、免費下載管理器、分區精靈。

為什麼此註冊表更改不起作用?我能做什麼來修復它?

答案1

當32位元程式存取時註冊表的某些部分,他們受到WOW64 重定向。出於相容性目的,他們獲得的註冊表視圖與實際情況不同。因此,32 位元安裝程式看不到您的變更。

您還需要更改此路徑中的值:

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion

然後 32 位元應用程式將看到並使用您選擇的設定。

相關內容