MFC exe 加载动态库

extern "C" __declspec(dllexport) void ShowDlg(void)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CDlgDllTest dlg;
dlg.DoModal();

}


void CRegMFCDllTestDlg::OnButtonInvokedll() 
{
typedef void (*pFunction)(void);
HINSTANCE hLibrary; //DLL句柄
hLibrary = LoadLibrary("RegMFCDLLSample.dll");
if (hLibrary == NULL)
{
DWORD ret = 0;
CString str;
ret = GetLastError();
str.Format("%d", ret);
MessageBox(str);
}


pFunction pShowDlg = (pFunction)GetProcAddress(hLibrary,"ShowDlg");
if (NULL==pShowDlg)
        MessageBox("DLL中不存在指定的函数"); 
else
        pShowDlg();
}

猜你喜欢

转载自blog.csdn.net/syb198810/article/details/80725227