毕业论文 - VC++环境下的动态链接库的开发与应用 下载本文

VC++环境下动态链接库的开发及应用

并添加以下代码:

void CDllDialog::OnButton1() { } // TODO: Add your control notification handler code here MessageBox(\ \在RegularDll.cpp 的最后,添加MFC规则DLL接口函数。

extern \{ AFX_MANAGE_STATE(AfxGetStaticModuleState()) ; }

CDllDialog dllDialog; dllDialog.DoModal();

图 3-3-6 添加MFC规则DLL接口函数

在RegularDll.cpp 的前面,添加 #include \

17

VC++环境下动态链接库的开发及应用

图 3-3-7 添加MFC规则DLL接口函数

完成上述步骤后,就可以编译并生成Dll文件了。

图 3-3-8 添加MFC规则DLL接口函数

3.4. MFC规则DLL的调用

(1)首先,创建一个基于MFC的单文档应用程序“CallRegDll”。

18

VC++环境下动态链接库的开发及应用

图 3-4-1 创建MFC的单文档应用程序CallRegDll

(2)添加一个菜单项“CallRegDll”。

图 3-4-2 添加一个菜单项

(3)在视类对该菜单项添加消息响应函数,函数代码如下: void CCallRegDllView::OnRegdll() {

19

VC++环境下动态链接库的开发及应用

// TODO: Add your command handler code here typedef void (*lpFun)(void);

HINSTANCE hDll=NULL; //DLL句柄 hDll = LoadLibrary(\

if(hDll!=NULL)

{ lpFun pShowDlg = (lpFun)GetProcAddress(hDll,\

if ( pShowDlg!=NULL)

{ pShowDlg(); } else {

MessageBox(\中函数寻找失败\ }

} } else { }

MessageBox(\没有找到相应的dll \

(4)编译并运行程序。点击菜单项,会弹出如下界面:

20