谁Load的DLL,就要谁FreeLibrary。
------------------------------------
在一个DLL中通过LoadLibrary的方式来加载另外一个DLL,这个过程不能在入口点函数中执行,否则系统会死锁,这个现象俗称DLL地狱。
用隐式调用吧
--------------------
跟EXE中调DLL没什么差别。
举个例子:
HINSTANCE hInst = LoadLibrary(_T("RxDLL.DLL"));
if(hInst)
{
typedef BOOL (MYFUNC)(CString);//声明DLL中的函数原形
MYFUNC* UninstallFont = (MYFUNC *)::GetProcAddress(hInst, _T("UninstallFont"));//获取该函数的入口地址
UninstallFont(_T("xjlFont.fon"));//调用函数
}
FreeLibrary(hInst);//必须和LoadLibrary搭配
阅读(472) | 评论(0) | 转发(0) |