现在我用mfc显示链接DLL文件,函数指针用GetProcAddress()获取的却是一个空的地址,具体代码如下(DSUM为函数名):
HINSTANCE hDllInst = AfxLoadLibrary("add.dll");
if(hDllInst)
{
typedef BOOL(WINAPI * DSUM)(const char *);
DSUM lobj;
//返回dll中ILoadOBJ()函数的地址
lobj=(DSUM)GetProcAddress(hDllInst,"DSUM"); if (lobj)//-------ERROR!!总是返回空地址
{
DSUM((LPCSTR)name);
}
FreeLibrary(hDllInst);
}请教各位高手为什么会出现这种情况,查了半天也没有查到解决方案,谢谢各位!!
HINSTANCE hDllInst = AfxLoadLibrary("add.dll");
if(hDllInst)
{
typedef BOOL(WINAPI * DSUM)(const char *);
DSUM lobj;
//返回dll中ILoadOBJ()函数的地址
lobj=(DSUM)GetProcAddress(hDllInst,"DSUM"); if (lobj)//-------ERROR!!总是返回空地址
{
DSUM((LPCSTR)name);
}
FreeLibrary(hDllInst);
}请教各位高手为什么会出现这种情况,查了半天也没有查到解决方案,谢谢各位!!
2然后进入add.dll,看看函数DSUM是否是导出函数。
确实是没有写extern "C",谢谢楼上各位了!!