2013年10月2日水曜日

windows 64bit版に32bit版アプリの参照するレジストリの保存先

恥の記録。

windows 64bit版で32bit版アプリの参照するレジストリの保存先はHKLMなら

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node

になる。
したがって、64bitOSでレジストリの内容をそのままリストアさせようとするとHKEY_LOCAL_MACHINE\SOFTWARE配下にそのまま登録されてしまうため、32bitアプリから参照できない。

言われてみればまことにごもっともで、32bitOSなんて使ってるの自宅のPCだけだったこともあって、思いつくまで悩んだ。

対応:
エクスポートされたファイルを置換するか、32bit版regedit.exeやreg.exeも用意されているので、そちらを使ってインポートする。

64bit版のregedit.exe,reg.exeは%systemroot%system32にあって、32bit版のそれは%systemroot%syswow64にある。

歴史的経緯とはいえ・・・

0 件のコメント:

コメントを投稿