欢迎来到天天文库
浏览记录
ID:41037337
大小:63.50 KB
页数:15页
时间:2019-08-14
《vc-DLL编程方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1、第一步创建一“MFC AppWizard (dll)”工程,接下来选择“Regular Dll using shared MFC DLL”,点击“Finish”。 2、添加一对话框资源到工程中,从菜单中选择Insert->Resource,添加一“Dialog” 选择“New”,至此对话框已添加到DLL工程中。 3、为对话框添加一新类,如:CTest,基类为CDialog。 4、在MFCDLL.cpp中(因创建的工程为MFCDLL)添加接口函数: extern "C" __declspec(dllexport) void Sho
2、w() { AFX_MANAGE_STATE(AfxGetStaticModuleState()); CTest test; test.DoModal (); } 别忘了在文件中添加: #include "Test.h":),大功告成,编译吧! 5、用VC新建一对话框工程,在一按钮点击事件中添加如下代码: typedef void (WINAPI * TESTDLL)(); HINSTANCE hmod; hmod = ::Lo
3、adLibrary ("mfcdll.dll"); if(hmod==NULL) { AfxMessageBox("Fail"); } TESTDLL lpproc; lpproc = (TESTDLL)GetProcAddress (hmod,"Show"); if(lpproc!=(TESTDLL)NULL) (*lpproc)(); FreeLibrary(hmod); 6、试试看,是不是DLL中对话框显示出来了:) 网络方法2下面通过例子介绍如何在动态链接库中
4、定义函数、资源、和类以及如何在工程中使用动态链接库中已定义的函数、资源、 类。 一、 函数的定义和使用方法: 第一步: 运行AppWizard,定义项目名为mydll,选择MFC AppWizard(dll),而不是MFC AppWizards(exe)。 第二步: 在这个例子中,只有一个AppWizard屏幕出现,选择MFC扩展DLL(MFC Extension DLL (using shared MFC DLL),点击 FINISH生成工程。 第三步: 点击File中的N
5、ew,选择C/C++ Header File,File Name中输入dll,点击OK,创建dll.h。输入extern "C" __declspec(dllexport) int fun(int x1,int x2,int x3); ,保存。 第四步: 点击File中的New,选择C++ Source File,File Name中输入dll,点击OK,创建dll.cpp。输入 #include "stdafx.h" #include "dll.h" extern "C" __declspec(dllex
6、port) int fun(int x1,int x2,int x3) { return x1+x2+x3; } 编译生成mydll.dll和mydll.lib。 第五步: 选择Project 中Add To Project 中的New , 重新生成一个工程,选择MFC AppWizards(exe),项目名为mydlltest , 选择Single Document ,点击FINISH,生成一个新的工程。选择菜单中的Project àSet Active Project àmydlltest
7、,将mydlltest设为当前活动工程 。 第六步: 拷贝…mydlldebugmydll.dll 到 ..mydlltestdebug下,拷贝…mydlldebugmydll.lib到…mydlltest目录下。 第七步: 在mydlltestView.cpp中的#endif下添加 extern "C" __declspec(dllimport) int fun(int x1,int x2,int x3); 在void CMydlltestView::OnDraw(CD
8、C* pDC)中添加代码如下: void
此文档下载收益归作者所有