Windows7/64bitでの32bitプログラムについてのメモ
cscript.exe wscript.exe regedit.exe cmd.exe .....
名前に反して、C:\Windows\System32 の下にある物が64bitアプリ
- 環境変数の違い
環境変数名 | 64bit環境 | 32bit環境 |
---|---|---|
CommonProgramFiles | C:\Program Files\Common Files | C:\Program Files (x86)\Common Files |
PROCESSOR_ARCHITECTURE | AMD64 | x86 |
PROCESSOR_ARCHITEW6432 | なし | AMD64 |
ProgramFiles | C:\Program Files | C:\Program Files (x86) |
- レジストリの違い
HKEY_CURRENT_USER\Software\Wow6432Node や HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node の下にあるキーが、32bit環境だと HKEY_CURRENT_USER\Software や HKEY_LOCAL_MACHINE\SOFTWARE の下にあるように見える。
別の言い方をすると、32bitアプリの動作をレジストリで設定する場合、HKEY_LOCAL_MACHINE\SOFTWARE\FooBar を修正しろと書いてある場合は、実際には HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\FooBar 等を変更すること。あるいは、C:\Windows\System32\regedit.exe ではなく C:\Windows\SysWOW64\regedit.exe を使って HKEY_LOCAL_MACHINE\SOFTWARE\FooBar を修正する。
IE9/32bit や Office2010/32bit をVBScript等で制御する場合は、C:\Windows\SysWOW64\WScript.exe や C:\Windows\SysWOW64\CScript.exe を使う。