问题解决--无法解析的外部符号 _imp_XXXXXXXXX
错误示例:

出现字符_imp,说明不是真正的静态库,而是某个动态库的导入库,导入函数和自己不同名,所以加了字符_imp。比如说_imp_GetUserNameA就是GetUserNameA函数。
会报这种错误的原因:
1、说明注册表函数没有相关的lib库,我们需要在MSDN下搜索函数。
2、如果有引入三方库文件,可能存在库编译时和自己的项目编译时的运行库选择不一致(MT/MTd/MD/MDd)。
解决方法:
1、打开MSDN,点击右上角的搜索:
MSDN网址:http://msdn.microsoft.com/en-us/dn308572.aspx

2、搜索之后,会出现多条搜索记录,选择一条点击进入:

3、里面会有这个函数的详细介绍,找到它所在的lib库:

4、将Advapi32.lib添加到代码工程中,即可解决问题。
| 1 |
|

本文详细解释了在项目中遇到的_imp_XXXXXXXXX错误原因,通常由动态库导入库引起,与注册表函数的lib库缺失或第三方库的运行库配置不匹配有关。通过在MSDN查找函数所在lib库并将其添加到项目中,如Advapi32.lib,可有效解决此问题。
36万+

被折叠的 条评论
为什么被折叠?



