動態調用dll,GetProcAddress總是返回NULL呢??

Javpp 2015-09-08 07:10:06
dll中

聲明:
extern "C" __declspec(dllexport) int GetAdapterNumber();


定義:

int GetAdapterNumber()
{
return 0;
}


調用:

HINSTANCE instance;
int (_stdcall *get_adapter_number)(void);


instance = LoadLibrary(L"E:\\HWInfo\\Win32\\Debug\\HWInfo.dll");

if(instance)
{
get_adapter_number = (int (_stdcall *)(void))GetProcAddress(instance, "GetAdapterNumber");
}
else
{
ShowMessage("load file error");
}


get_adapter_number總是null。。。

...全文
142 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Javpp 2015-09-10
  • 打赏
  • 举报
回复
引用 2 楼 ccrun 的回复:
你的DLL中导出函数GetAdapterNumber没有指定_stdcall 调用和声明需要一致才行。
寫了個獲取網卡mac地址的dll,發現必須得連接網線才能正常獲取。。。
Javpp 2015-09-10
  • 打赏
  • 举报
回复
引用 2 楼 ccrun 的回复:
你的DLL中导出函数GetAdapterNumber没有指定_stdcall 调用和声明需要一致才行。
是這樣的了。。。 謝謝妖哥。。
ccrun.com 2015-09-08
  • 打赏
  • 举报
回复
你的DLL中导出函数GetAdapterNumber没有指定_stdcall 调用和声明需要一致才行。
Javpp 2015-09-08
  • 打赏
  • 举报
回复
HINSTANCE instance;
int (_stdcall *get_adapter_number)(void);

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧