【发布时间】:2011-05-01 18:24:28
【问题描述】:
我有一个 DLL,我想使用它的一些功能。
#include <iostream>
using namespace std;
extern "C" __declspec(dllimport) int Initialize(char* localPort, char* adminServerName, int rpcTimeout);
int main()
{
int res = Initialize("7864", "6000@kabc", 10000);
return 0;
}
我没有 DLL 的 .lib 文件,所以无论如何我可以链接到它。我想到的一件事是使用 LoadLibrary 函数,然后使用 GetProcAddress()。有没有其他办法?
当我编译以下代码时
错误 LNK2019:未解析的外部符号 _imp_Initialize 在函数 _main
中引用
致命错误 LNK1120:1 个未解决的外部问题
我收到上述错误
我使用的是 Windows 和 Visual Studio 2008
【问题讨论】:
-
您没有随 DLL 一起提供的相应头文件吗?
-
因为这取决于系统和编译器,请告诉我们您的系统和编译器(它可能对潜在的回答者有用)
-
好吧,您需要猜测确切的函数签名(假设您做对了),并在项目设置中将 DLL 指定为依赖项(假设您使用的是 Visual Studio)。这应该会有所帮助。
标签: c++ linker linker-errors dllimport visual-c++