64ビット版Windowsの場合のレジストリ注意
64bit版のWindowsでは、レジストリの構造が32bit版と微妙に異なっています。
微妙すぎて32ビットのレジストリキーを見ているのか64ビットのレジストリキーを見ているのか区別がつきません。
64bit版で、スタートメニューのファイル名を指定して実行から、regedit.exeを起動した場合は、64ビット版のレジストリエディタが起動します。
ですが、起動したものを見ても区別はつきません。
この時見えているのは64ビットのキーであり、32ビットのキーは奥の方に格納されている状態です。
↓ココにまとまっています。
HKEY_LOCAL_MACHINE\Software\WOW6432Node
あえて32ビット版のキーのみを参照/編集したい場合は、
32ビット用のレジストリエディタを起動します。
%systemroot%\syswow64\regedit
起動しても相変わらず区別がつきません・・・
非常にややこしい。
C#でレジストリを操作する場合、RegistryKey を使用しますが、
64ビットOS上で書き込んだ場合は、32ビットレジストリの方に書き込まれます。
(ターゲットCPUをx86にしている場合)
書いたはずなのに、レジストリエディタで見ると書かれていないという状況になります。
そんな時は、上記の32ビットのキーを探してみてください。
== ランキングに参加しています。ぜひクリックお願いします ==
XPモードのパスワードを忘れたら jQueryMobileの実装サイトをまとめたページ