1.加载dll
const char gdllname[50] = "XXdll"; CDllM::CDllM(char* dllname) :hLibSso(NULL) { hLibSso = NULL; if (dllname) { hLibSso = LoadLibraryA(dllname); } else { hLibSso = LoadLibraryA(gdllname); } Init(); }
2.定义一个函数指针。
typedef char* (*pf_GetCurrentUser)();
3.用刚定义的函数指针定义一个成员变量,并初始化此变量
pf_GetCurrentUser m_pfGetCurrentUserId; 。。。 m_pfGetCurrentUserId = (pf_GetCurrentUser)GetAddres("GetCurrentUserId");
4.这样用的
m_DllManagerm_pfGetCurrentUserId() ;
5.用完以后要释放。
CDllM::~CDllM(void) { if (hLibSso != NULL) { FreeLibrary(hLibSso); hLibSso = NULL; } }