新手学动态库加载求助
#include <stdio.h>
#include <windows.h>
typedef int (*lpAddFun)(int,int);
int main(int argc, char *argv[])
{
HINSTANCE hInst_1 = LoadLibrary("dllTest.dll"); //DLL句柄
lpAddFun addFun; //函数指针
if (hInst_1 != NULL)
{
addFun = (lpAddFun)GetProcAddress(hInst_1,"add");
if (addFun != NULL)
{
int result = addFun(2,3);
printf("%d",result);
}
FreeLibrary(hInst_1);
}
system("pause");
return 0;
}
不是学计算机的,基础不牢编程出现好多低端错误。正在学动态库,上面是一个例程,DLL句柄处运行时一直出错。hInst_1返回值一直是NULL,求各位大神指点。
[解决办法]
dll跟exe在同一个目录
[解决办法]
可以先试试绝对路径
[解决办法]
把dll放到工程路径\debug路径下试试
[解决办法]
路径有问题。用的时候可以判断一下,这个路径下面有什么这个dll