質問: 「programfiles(x86)」のデフォルトの場所を変更しても機能しません レジストリを編集して、「programfiles」と「programfiles(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:\ programfiles(x86)」にインストールしようとしますが、この場所を手動で変更する必要があります。 「e:\ programfiles\32bits」(存在する)にインストールした後、アプリは正常に動作します。これらのアプリは、nvidiaドライバー、vmware workstation 12、vlc、steam、無料ダウンロードマネージャー、パーティションウィザードです。このレジストリの変更が機能しないのはなぜですか?それを修正するにはどうすればよいですか?
回答: 32ビットプログラムが レジストリの特定の部分 にアクセスする場合、それらは wow64リダイレクト の対象となります。互換性の目的で、実際に存在するものとは異なるレジストリのビューを取得します。したがって、32ビットのインストーラープログラムは変更を認識しません。このパスの値も変更する必要があります。hkey_local_machine\software\wow6432node\microsoft\windows\currentversion 次に、32ビットアプリケーションは選択した設定を表示して使用します。