Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在64位操作系统上访问Registry.LocalMachine_C#_.net_Registry - Fatal编程技术网

C# 在64位操作系统上访问Registry.LocalMachine

C# 在64位操作系统上访问Registry.LocalMachine,c#,.net,registry,C#,.net,Registry,我下面有一些代码正在访问注册表。该应用程序是为x86构建的,但在64位操作系统上运行时,它找不到注册表项。我认为,如果它是为x86编译的,那么就可以了,而不必尝试查看WOW6432节点 我是做错了什么,还是只是在64位操作系统上,注册表项应该在WOW6432节点下 RegistryKey OurKey = Registry.LocalMachine; OurKey = OurKey.OpenSubKey(@"SOFTWARE\Inspectron\ImageChecker"); 在“Run”中

我下面有一些代码正在访问注册表。该应用程序是为x86构建的,但在64位操作系统上运行时,它找不到注册表项。我认为,如果它是为x86编译的,那么就可以了,而不必尝试查看WOW6432节点

我是做错了什么,还是只是在64位操作系统上,注册表项应该在WOW6432节点下

RegistryKey OurKey = Registry.LocalMachine;
OurKey = OurKey.OpenSubKey(@"SOFTWARE\Inspectron\ImageChecker");

在“Run”中给出“regedit”字符串,您将获得注册表列表

只是在64位操作系统上,注册表项应该在WOW6432节点下吗

RegistryKey OurKey = Registry.LocalMachine;
OurKey = OurKey.OpenSubKey(@"SOFTWARE\Inspectron\ImageChecker");
是的。。这是正确的。。64位操作系统(Windows)仅在WOW6432节点内存储32位应用程序密钥


因此,您必须在Wow6432node的注册表配置单元中查找您的密钥。

Ram确认注册表中的密钥必须在Wow6432node中,然后我发现编译为x86并使用我已经使用的代码意味着它将在Wow6432node下查找密钥