Share via


レジストリ内の 32 ビットおよび 64 ビットのアプリケーション データ

64 ビット Windows では、レジストリ エントリの一部が 32 ビット アプリケーションと 64 ビット アプリケーション用に個別に格納され、レジストリ リダイレクターレジストリ リフレクションを使用して個別の論理レジストリ ビューにマップされます。64 ビット バージョンのアプリケーションでは、32 ビット バージョンとは異なるレジストリ キーと値が使用される場合があるためです。 また、リダイレクトまたは反映されない 共有レジストリ キー もあります。

各 64 ビット レジストリ ノードの親は、Image-Specific Node または ISN です。 レジストリ リダイレクターは、アプリケーションのレジストリ アクセスを適切な ISN サブノードに透過的に転送します。 レジストリ ツリー内のリダイレクト サブノードは、 Wow6432Node という名前を使用して WOW64 コンポーネントによって自動的に作成されます。 その結果、 Wow6432Node を作成するレジストリ キーに名前を付けないようにすることが不可欠です。

KEY_WOW64_64KEYフラグとKEY_WOW64_32KEY フラグを使用すると、それぞれ 64 ビット レジストリ ビューと 32 ビット ビューに明示的にアクセスできます。 詳細については、「 代替レジストリ ビューへのアクセス」を参照してください。

特定のキーのレジストリ リフレクションを無効にして有効にするには、 RegDisableReflectionKey 関数と RegEnableReflectionKey 関数を使用します。 アプリケーションでは、作成するレジストリ キーに対してのみリフレクションを無効にし、 HKEY_LOCAL_MACHINEHKEY_CURRENT_USERなどの定義済みキーのリフレクションを無効にしないようにする必要があります。 リフレクション リストに含まれるキーを確認するには、 RegQueryReflectionKey 関数を使用します。

registry リダイレクター

レジストリ リフレクション