GetProcAddress()为什么总返回NULL值?
//build a DLL project
//fun.cpp
#include <iostream.h>
extern "C" __declspec(dllexport) void fun(void)
{
cout<<"This is fun()."<<endl;
}
//building a test project
//main.cpp
#include <windows.h>
#include <iostream.h>
typedef void (*funDll)(void);
void main(void)
{
HINSTANCE funLib;
funDll pfun;
funLib = LoadLibrary("FunDll");
if (funLib == NULL)
{
cout<<"LoadLibrary(\"FunDll\") error!"<<endl;
}
else
{
pfun = (funDll)GetProcAddress(funLib, "fun");
if (pfun == NULL)
{
cout<<"GetProcAddress(funLib, \"fun\") error!"<<endl;
}
else
{
pfun();
}
FreeLibrary(funLib);
}
}
结果总是:LoadLibrary("FunDll") error!
哪里错了啊?