用LoadLibrary和GetProcAddress函数调用dll的代码有问题,希望高手指点(谢谢)!
请高手指点程序有何问题,我做了一个dll文件想用显示的方式调用,就是用LoadLibrary和GetProcAddress函数实现,可是运行总是出错。
程序代码如下:
//Dll_Test.cpp 生成Dll_Test.dll
#include "stdafx.h"
#include "Dll_Test.h"
int Max(int a, int b)
{
if(a>b)
return a;
else
return b;
}
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
//Test_GetMax.cpp
#include "stdafx.h"
#include <stdio.h>
#include <afxwin.h>
#include <afxext.h>
#include <afxdisp.h>
#include <afxdtctl.h>
int main(int argc, char* argv[])
{
typedef int (CALLBACK* LPFNDLLFUNC)(int ,int);
HINSTANCE hDLL;
LPFNDLLFUNC lpfnDllFunc;
hDLL = LoadLibrary("Dll_Test.dll");
if (hDLL != NULL)
{
lpfnDllFunc = (LPFNDLLFUNC)GetProcAddress(hDLL, "Max");
if (!lpfnDllFunc)
{
FreeLibrary(hDLL);
}
else
{
printf("已经找到函数");
int a;
a = lpfnDllFunc(1,2);
printf("返回直:%d",a);
}
}
return 0;
}
程序代码如下:
//Dll_Test.cpp 生成Dll_Test.dll
#include "stdafx.h"
#include "Dll_Test.h"
int Max(int a, int b)
{
if(a>b)
return a;
else
return b;
}
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
//Test_GetMax.cpp
#include "stdafx.h"
#include <stdio.h>
#include <afxwin.h>
#include <afxext.h>
#include <afxdisp.h>
#include <afxdtctl.h>
int main(int argc, char* argv[])
{
typedef int (CALLBACK* LPFNDLLFUNC)(int ,int);
HINSTANCE hDLL;
LPFNDLLFUNC lpfnDllFunc;
hDLL = LoadLibrary("Dll_Test.dll");
if (hDLL != NULL)
{
lpfnDllFunc = (LPFNDLLFUNC)GetProcAddress(hDLL, "Max");
if (!lpfnDllFunc)
{
FreeLibrary(hDLL);
}
else
{
printf("已经找到函数");
int a;
a = lpfnDllFunc(1,2);
printf("返回直:%d",a);
}
}
return 0;
}
...全文
相关推荐
航空材料研究行业熔铸中心工程技术组组长任务绩效考核指标(KPI).doc
航空材料研究行业熔铸中心工程技术组组长任务绩效考核指标(KPI).doc
航空材料研究行业熔铸中心生产调度任务绩效考核指标(KPI)
工欲善其事必先利其器,航空材料研究行业熔铸中心生产调度任务绩效考核指标(KPI)就是你学习这一行业最...该文档为航空材料研究行业熔铸中心生产调度任务绩效考核指标(KPI),是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看
航空材料研究行业熔铸中心 物料组长任务绩效考核指标(KPI)
三百六十行,行行出状元,但状元也是需要查找和学习航空材料研究行业熔铸中心 物料组长任务绩效考核指标...该文档为航空材料研究行业熔铸中心 物料组长任务绩效考核指标(KPI),是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看
航空材料研究行业熔铸中心质检组长任务绩效考核指标(KPI)
工欲善其事必先利其器,航空材料研究行业熔铸中心质检组长任务绩效考核指标(KPI)就是你学习这一行业最...该文档为航空材料研究行业熔铸中心质检组长任务绩效考核指标(KPI),是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看
航空材料研究行业熔铸中心精整发货组长任务绩效考核指标(KPI)
工欲善其事必先利其器,航空材料研究行业熔铸中心精整发货组长任务绩效考核指标(KPI)就是你学习这一行...该文档为航空材料研究行业熔铸中心精整发货组长任务绩效考核指标(KPI),是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看


进程/线程/DLL
