我有一个x64应用程序正在x64操作系统上运行,我正在尝试从x86注册表中读取。
这是我的代码:

RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\Idontexist", 0, KEY_READ | KEY_WOW64_32KEY, &hKey);

我想尝试打开 HKCU \ Software \ Wow6432Node \ Idontexist ,但相反,它是打开 HKCU \ Software \ Idontexist

我在进程监视器中进行了查看,并且如果我使用KEY_WOW64_64KEY或KEY_WOW64_32KEY,则两者都尝试读取 HKCU \ Software \ Idontexist ,而不是 HKCU \ Software \ Wow6432Node \ Idontexist

编辑:OS是Windows 7,如果有任何区别。

最佳答案

this MSDN page中详细显示了重定向和反射(reflect)在Windows 7上的键。此处太大,无法重现,但您可以清楚地看到,除Classes子项以外的HKCU \ Software项是共享的,而不是重定向的。

关于c++ - KEY_WOW64_32KEY无法从x64应用程序重定向,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14105984/

10-11 23:13