lnk1136 - 无效或损坏的.lib

时间:2015-08-13 15:55:16

标签: c++ dll .lib

我有一点问题。我有一个dll C库,一个头文件,以及调用这个dll所需的所有其他文件。我试过通过第三方程序调用这个DLL,它正在工作。 但是,当我尝试直接调用它(在加载时使用动态链接并使用给定的头文件)时,我总是使用mydll.lib获得链接器错误1136。

使用头文件:

#include "windows.h"
#include "mydll.h"

void main() {
    bool test;
    test = CallDll("MyArg");
}

使用头文件中的代码如下:

extern "C" bool _stdcall CallDll(char* MyArg);

在加载时使用动态链接:

#include "windows.h"

bool(*CallDll)(char*);
HINSTANCE h = LoadLibrary((LPCSTR)"mydll");

void main() {
    CallDll = (bool(*)(char*))GetProcAddress(h, "CallDll");
    bool test;
    test = CallDll("MyArg");
}

现在我做错了什么?我怀疑mydll.lib文件是否已损坏,因为如果这是问题,我无法使用第三方程序访问该DLL。

1 个答案:

答案 0 :(得分:0)

这是一个相当简单的解决方案。

number_list

是否只需要......