アプリケーションからレジストリ キーを読み取ろうとしています。これは 32 ビット プロセスであり、64 ビット システム (Win7 64 ビット) で実行されています。これは私のコードです:
string value64 = string.Empty;
RegistryKey localKeyRegistryKey.OpenBaseKey(Microsoft.Win32.RegistryHive.LocalMachine, RegistryView.Registry64);
localKey = localKey.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion");
if (localKey != null)
{
value64 = localKey.GetValue("RegisteredOrganization").ToString();
MessageBox.Show(value64, "value64");
}
私のシステムでは、このキー (SOFTWARE\Microsoft\Windows NT\CurrentVersion) の下の値は空で、この (SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion) の下の値は "Microsoft" です。しかし、メッセージ ボックスの value64 は空です! 「マイクロソフト」じゃないの?