dll 导出乱码及inconsistent dll linkage

本文记录了在Visual Studio中使用DLL时遇到的警告问题inconsistent dll linkage及其解决办法,通过调整为dllexport并使用特定语法实现了正确导出。此外,还介绍了如何使用dumpbin工具查看DLL中导出的所有函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在尝试着使用DLL 发现如下两个问题,做个记录:

首先warning : inconsistent dll linkage

在vs 工程中使用dllimport 导致出现上面的警告

(不知道这两个有什么区别?)

变更为dllexport警告消失,但出现新的问题,导出的符号是乱码无法使用,

发现是我们的文件原本是c写的,只是把文件名该为了。cpp 后来在导出文件中加入

#  ifdef __cplusplus
extern  "C" {
#  endif                        // __cplusplus


导出符号即正常了


另外如何查看DLL 导出了那些函数呢?

在VS2005 里面有个命令行工具dumpbin.exe,

在dumpbin 的根目录下(命令行)敲:

dumpbin.exe /exports test.lib  即可以看到导出的函数名称了


第一次使用DLL 真是费了不少功夫啊 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值