编辑2:好的,我改用Orwell DevC++,其中包括“winnt.h”,其中包含#define KEY_WOW64_64KEY 0x0100,但它仍然无法工作。(参见编辑1:)
编辑1:我查看了CodeBlock和DevC++附带的“winnt.h”,DevC++缺少以下行:
#if (_WIN32_WINNT >= 0x0502)
#define KEY_WOW64_64KEY 0x0100
#define KEY_WOW64_32KEY 0x0200
#endif
将上述代码放入DevC++的wint.h中并不能起作用。
原帖: 我有一个32位应用程序(在DevC++和Windows 7 64位开发),其中之一的任务是读取64位应用程序的注册表,因此我正在尝试在RegOpenKeyEx中使用“KEY_WOW64_64KEY”标志,并找到了几篇关于如何使用_WIN32_WINNT的文章:这个和这个。
当我在CodeBlock项目(测试项目)中使用它时,它的效果非常好,但是相同的代码在DevC++中无法工作,由于codeblock存在其他问题,我现在无法将其移植到codeblock中。
我该如何使其在DevC++中正常运行?
谢谢
#define KEY_WOW64_64KEY (0x0100)
。但你应该尝试让头文件版本也能正常工作。 - RupRegOpenKeyEx
调用中的KEY_WOW64_64KEY
替换为0x100
。 - Rup