コマンドプロンプトでプログラムファイル(x86)の場所を表示する方法を知りたいです。 Windows 7 64ビットを使用しています。
私はもう試した:
echo %programfiles(x86)%
およびecho %programfiles%
、
どちらもC:\Program Files
のみを表示します
レジストリを手動で確認したとき、
HKLM/Software/Microsoft/windows/currentversion、programfilesdir
はC:\Program Files
を指し、
HKLM/Software/WOW64/Microsoft/winodws/currentversion、programfilesdir
はC:\Program Files (x86)
を指します。
しかし、なぜC:\ Program Filesで常に表示されるのですか??
64ビットモードで実行されている64ビットマシンの場合:
echo %programfiles%
==> C:\Program Files
echo %programfiles(x86)%
==> C:\Program Files (x86)
32ビット(WOW64)モードで実行されている64ビットマシンの場合:
echo %programfiles%
==> C:\Program Files (x86)
echo %programfiles(x86)%
==> C:\Program Files (x86)
32ビットモードで実行されている32ビットマシンの場合:
echo %programfiles%
==> C:\Program Files
echo %programfiles(x86)%
==> %programfiles(x86)%
別の関連する環境変数は次のとおりです。
したがって、32ビット(WOW64)モードで実行されている64ビットマシンでは:
- echo%programfiles%==> C:\ Program Files(x86)
- echo%programfiles(x86)%==> C:\ Program Files(x86)
- echo%ProgramW6432%==> C:\ Program Files
From Wikipedia :
%ProgramFiles%変数は、Windowsなどのインストールされているすべてのプログラムを格納するProgram Filesディレクトリを指します。英語システムのデフォルトは「C:\ Program Files」です。 64ビット版のWindows(XP、2003、Vista)には、デフォルトで「C:\ Program Files(x86)」となる%ProgramFiles(x86)%と、デフォルトで「C: \プログラムファイル"。 %ProgramFiles%自体は、環境変数を要求するプロセス自体が32ビットであるか64ビットであるかによって異なります(これはWindows-on-Windows 64ビットリダイレクトが原因です)。
Windows 64ビットマシンでは、エコー%programfiles(x86)%はC:\ Program Files(x86)を印刷します