转载请注明出处。
文章地址:https://blog.csdn.net/duiwangxiaomi/article/details/100283599?spm=1001.2014.3001.5501
C++调用C形式的动态链接库dll中函数,在调用时出现如下问题,(编程环境:vs2013,调用dll所用编程语言:C++, 编写dll使用语言:C)
出现此种错误,大多是找不到相应的库文件,但是检查自己的项目属性及链接器配置都没有问题,最后通过添加预处理命令方式解决。 测试的dll函数程序如下,
VOLUMEMEASURE3DDLL_API int Add1(int a, int b, int& c)
{
c = a + b;
return 1;
}
调用程序
Void main()
{
int c = 0;
Add1(5, 4, c);
cout << c << endl;
}
在添加头文件处添加预处理指令,#pragma comment(lib,“xxx.lib”),xxx代表lib所在路径及文件名,添加后,程序调用成功,如下图所示,
虽然程序调用问题解决了,但是仍有一点疑惑:为什么在项目包含目录、库目录和链接器输入等项目属性都配置无误的情况下出现这种错误,望大佬在评论中给解释一下,非常感谢!
本文是在项目配置无误情况下出现这种问题的解决方法,对于项目配置有问题的伙伴可参考以下链接: 参考链接1
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/185326.html原文链接:https://javaforall.cn