在一个工程引用dll时,容易产生以下的link错误:
test.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport)
testDlg.obj : error LNK2001: 无法解析的外部符号 "__declspec(dllimport)
testDlg.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport)
分析因加载动态库遇到的link错误时可以考虑从以下几方面入手:
1、调用的类、函数是否只有声明没有定义
2、调用的类或者函数、变量是否export
a:是否显示写上__declspec(dllexport)
b:在dll导出的类等文件较多时,确认是否加载到dll工程编译(我犯的错误)
3、调用的类、函数或者变量在当前工程中应该为__declspec(dllimport)
通过上面的检查基本上就可以定位因调用dll库带来的link错误!

本文针对在工程中使用DLL时常见的LNK2019和LNK2001链接错误进行了详细分析,并提供了排查和解决这些问题的具体步骤。包括检查类和函数的声明与定义、确认是否正确使用了__declspec(dllexport)和__declspec(dllimport)。
911

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



