标题:求助: 调用DLL中的函数 GetProcAddress返回空
取消只看楼主
linan03
Rank: 4
等 级:业余侠客
威 望:5
帖 子:76
专家分:204
注 册:2012-10-27
结帖率:44.44%
已结贴  问题点数:20 回复次数:1 
求助: 调用DLL中的函数 GetProcAddress返回空
VS2010下
说一下情况:
调用工程中:
    HMODULE hModule = LoadLibrary(_T("Create_buttonEX_DLL.dll"));
    TestFun tFun = (TestFun)GetProcAddress(hModule, "LoadingDllTest");
    if (tFun != NULL)
    {
        tFun();
    }
    FreeLibrary(hModule);
其中TestFun 函数指针类型确定没错

创建DLL的工程中:
声明
extern "C" VOID __declspec(dllexport) LoadingDllTest();
实现
void LoadingDllTest()
{
    AFX_MANAGE_STATE(AfxGetStaticModuleState());

    ::MessageBoxA(NULL,"test",NULL,MB_OK);
     CDialogForDll mainDlg;
     mainDlg.DoModal();
}
模块定义文件
LIBRARY Create_buttonEX_DLL
EXPORTS
    LoadingDllTest @ 1


在调用时 返回的tFun  为NULL
这可能是什么原因??
搜索更多相关主题的帖子: 工程 
2013-10-17 09:55
linan03
Rank: 4
等 级:业余侠客
威 望:5
帖 子:76
专家分:204
注 册:2012-10-27
得分:0 
真是不好意思
原来是LoadLibrary这边就返回NULL了

虽然设置里已经添加了这个库目录
但是还是找不到  

直接放到工程目录下 然后就可以了
2013-10-18 13:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-422035-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015415 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved