加载DLL找不到指定的函数
文西 博客专家认证 2009-11-06 05:09:40 今天加载动态链接库,可以加载到库,但是里面的函数却加载不加来,用errlook工具查看错误信息是找不到指定的函数
将函数名反复看好几遍,复制。还是不行,用Depends工具看链接库的导出函数 明显看到那个函数就在那。
请教大虾原因了 下面是我的主干代码
库:
定义导出函数
HHICRes 和 HICParaml是两个结构体
__declspec (dllexport) HICRes handleCharge(HICParaml &charge)
{
。。。。。。。
}
测试文件
typedef HICRes ( *LPFUNC)(HICParaml &send);//这个前边用不用 __stdcall有差别么 反正都找不到 默认的调用方式不就
是stdcall么
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
HINSTANCE hdll=::LoadLibrary("Control3.dll");//不会是版本问题,弄了好几次 dll和main里调用的函数名字是一样的
if(hdll!=NULL)
{
LPFUNC pf=(LPFUNC)GetProcAddress(hdll,"handleCharge");
UINT errorid=GetLastError();//错误代码 127 pf为空
}
}