dumpbin命令未在dll

时间:2015-08-11 11:28:50

标签: visual-studio-2012 visual-c++ dll dumpbin

我有一个在VB.Net中发布的DLL。我试图从我的vc ++代码调用它的函数。使用LoadLibrary函数成功加载了dll。 但是当我尝试调用dll中的任何函数时,它会给出一个空指针异常。

我使用dumpbin命令来确认我的dll中的函数参数。但它没有列出任何功能。这可能是dll的问题,还是dumpbin只支持几个dll?请帮忙!

  

C:\ Program Files(x86)\ Microsoft Visual Studio 11.0> dumpbin ECR.dll   Microsoft(R)COFF / PE Dumper版本11.00.51106.1版权所有(C)   微软公司。保留所有权利。

     

转储文件ECR.dll

     

文件类型:DLL

     

摘要

    2000 .reloc
    4000 .rsrc
    2000 .sdata
   16000 .text

1 个答案:

答案 0 :(得分:0)

尝试在DLL文件中的任何函数(头文件.h文件)之前写入最后带有_API的项目名称(ECR_API)。

例如,假设我们要为名为Loader的类创建构造函数和析构函数:

class Loader{
    public:
        ECR_API Loader();
        ECR_API ~Loader();
}

也不要忘记在头文件的开头添加导出和导入语句:

#ifdef ECR_EXPORTS
#define ECR_API __declspec(dllexport)
#else
#define ECR __declspec(dllimport)
#endif

希望这有帮助! 对我来说很好。