我爱Aspx >> VC.Net >> <b>Dynamic-Link Libraries(DLLS)在MFC Visual C++ 6中的使用问题</b>动态链接库(DLL)由可执行模块组成,为进程提供数据、代码和资源。编译时使用的静态链接库不同的是,动态链接库独立于激活它们的可执行文件,调用的地址转换是在加载 时解决的。这使DLL的故障查找和小的修改比较简单,不必重新编译调用它们的可执行模块。
Visual Studio提供AppWizard生成MFC DLL。给出名字和目录信息后,AppWizard还要求一个关键信息:DLL类型。可选的类型包括:MFC DLL静态链接的常规DLL(Regular DLL with MFC statically linked),使用共享MFC DLL的常规DLL(Regular DLL using shared MFC DLL)和MFC扩充DLL(MFC Extension DLL(using shared MFC DLL))。因此,常把MFC DLL基本上分成两个类型:
.常规DLL 可能包含MFC类,但导出不使用MFC派生类的函数。常规DLL可以链接MFC和C运行时间静态库或动态库。
.MFC扩充DLL 包含从MFC类派生的可公共访问的类的DLL,被称为AFX扩充DLL或AFX DLL。AFC DLL是唯一可发布MFC派生类供其它DLL或可执行模块用的DLL。扩充DLL以及使用它们的模块需要与MFC库的DLL版本链接,实际上,也要求与C运行库的DLL版本链接。扩充DLL通过与MFC库的DLL版本的链接,可以导出窗口类、消息映射和动态(可串行化的)对象。
本文就MFC DLL编写及使用中的部分问题,结合个人开发程序的经验与体会,作几点说明。
一、开发和使用DLL需注意三种文件
1、 DLL头文件(.H)
它是指DLL中说明输出的类或符号(Symbols)原型或数据结构的.H文件。当其它应用程序调用DLL时,需要将该文件包含入应用程序的源文件中。
【我对这篇文章有话说?】
<b>Visual C++中OpenGL编程..[05-21]
<b>VC代码的编写和调试<..[05-21]
<b>用VC实现拨号上网程序&..[05-21]
<b>深入剖析MFC中Windows消..[05-21]
<b>屏幕取词的原理</b&..[05-21]
<b>一个简单的显示文字控件..[05-21]
<b>VC中给树形控件的图标加..[05-21]
<b>一个简单的显示文字控件..[05-21]
<b>Win32环境下dll编程原理..[05-21]
<b>VB调用C程序的方法—动..[05-21]