特定のレジストリ キーがリダイレクトされているかどうかを判断することはできますか?
私の問題は、32 ビット アプリケーションから一般的な方法で、32 ビットと 64 ビットの両方のレジストリ ビューでレジストリ キーを列挙したいということです。最初は KEY_WOW64_64KEY で、次に KEY_WOW64_32KEY で、各キーを 2 回開くだけです。ただし、キーがリダイレクトされない場合、まったく同じキーが得られ、まったく同じコンテンツを 2 回列挙することになります。これは私が避けようとしているものです。
それに関するドキュメントをいくつか見つけましたが、ハイブを調べて、キーで一連の文字列比較を行うしかないようです。私が考えた別の可能性は、各サブキーで Wow6432Node を開こうとすることです。存在する場合は、キーをリダイレクトする必要があります。つまり、HKCU\Software\Microsoft\Windows を開こうとしている場合、次のキーを開こうとします: HKCU\Wow6432Node、HKCU\Software\Wow6432Node、HKCU\Software\Microsoft\Wow6432Node、および HKCU\Software\Microsoft\Windows\うわー6432ノード。残念ながら、ドキュメントは、リダイレクトされたキーの子が必ずしもリダイレクトされないため、ルートにも問題があることを暗示しているようです。
それで、ここで私のオプションは何ですか?