dll 导出乱码及inconsistent dll linkage

最近在尝试着使用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 真是费了不少功夫啊 

你可能感兴趣的:(dll 导出乱码及inconsistent dll linkage)