C# 在WOW64模式下找不到注册表项

C# 在WOW64模式下找不到注册表项,c#,registry,wow64,C#,Registry,Wow64,我正在使用此代码从注册表中获取密钥: RegistryKey mykey = Registry.CurrentUser.OpenSubKey("Software\\Publisher\\Product", true); 并且该项确实存在于下的注册表中 \HKCU\Software\Publisher\Product 但是,我的代码是用x86编译的,它在x86_64机器上运行。所以,我想我应该在 \HKCU\Software\WOW6432Node\Publisher\Produ

我正在使用此代码从注册表中获取密钥:

RegistryKey mykey = 
      Registry.CurrentUser.OpenSubKey("Software\\Publisher\\Product", true);
并且该项确实存在于下的注册表中

\HKCU\Software\Publisher\Product
但是,我的代码是用x86编译的,它在x86_64机器上运行。所以,我想我应该在

\HKCU\Software\WOW6432Node\Publisher\Product

但是,找不到密钥。如何更改注册表(我无法更改代码)以在x86_64计算机上找到此项?

据我所知,如果您可以创建一个服务/代码,将常规注册表中的详细信息拉入WOW6432节点,那就太好了。@RamMehta实际上,手动执行一次就已经很有帮助了。关键是我这么做了,但它似乎不起作用。不,香港大学并不是这样重定向的。HKLM是。你必须寻找另一种解释。就像产品实际上是一个值而不是一个键。那么你的意思是说代码没有从注册表中提取值?@RamMehta是的,我提供的一小段C代码返回
null