我最近写qt,我是在qtcreat下调用vs2010的工具链。出现问题的地方是注册表操作。代码已经扒出来,新建一个项目单独测试,确定不是其它地方的问题。
光简单的一句打开注册表RegOpenKeyEx。编译通过链接错误。
LNK2019:无法解析的外部符号 __imp__RegOpenKeyExW@20
有什么lib没链接进去。然后我发现加target=vcapp转成vs工程再用vs去生成就能正常通过。
于是我想到去比较对应qmake.conf内容和vs工程设置里有什么不同。但没结果,对照命令行没看出少了什么,vs里链接的lib好像qmake.conf里也有。
想想还是来这请教下高手,谁能告诉我RegOpenKeyEx这函数使用要依赖哪个lib?
光简单的一句打开注册表RegOpenKeyEx。编译通过链接错误。
LNK2019:无法解析的外部符号 __imp__RegOpenKeyExW@20
有什么lib没链接进去。然后我发现加target=vcapp转成vs工程再用vs去生成就能正常通过。
于是我想到去比较对应qmake.conf内容和vs工程设置里有什么不同。但没结果,对照命令行没看出少了什么,vs里链接的lib好像qmake.conf里也有。
想想还是来这请教下高手,谁能告诉我RegOpenKeyEx这函数使用要依赖哪个lib?
Client Requires Windows Vista, Windows XP, or Windows 2000 Professional.
Server Requires Windows Server 2008, Windows Server 2003, or Windows 2000 Server.
Header Declared in Winreg.h; include Windows.h.
Library Use Advapi32.lib.
DLL Requires Advapi32.dll.
Unicode Implemented as RegOpenKeyExW (Unicode) and RegOpenKeyExA (ANSI).
查出来我没理解那个qmake配置文件。被QMAKE_LIBS_CORE QMAKE_LIBS_GUI这样的忽悠了,把lib写在QMAKE_LFLAGS后面就好了。
生成成功。问题解决,结帖。谢谢两位。