MFC扩展DLL与常规DLL的区别

来源:互联网 发布:学化妆的软件 编辑:程序博客网 时间:2024/05/16 17:39

MFC扩展DLL与常规DLL的区别

MFC提供了三种不同的方式支持DLL的开发:
1.建立静态链接MFC的常规DLL(Regular DLL)
2.建立动态链接MFC的常规DLL
3.建立动态链接MFC的扩展DLL(Extension DLL)
扩展DLL与常规DLL的区别在于:
(1)MFC的扩展DLL支持C++接口,即扩展DLL能够导出整个C++类。这就是说,我们可以从已有的MFC类派生新的可再用类。扩展DLL在建立时使用的是MFC的动态链接,因而扩展DLL要求客户程序动态地链接到MFC动态库。扩展DLL的一个特点是尺寸很小,能够很快加载。
(2)常规DLL可被任意win32编程环境加载。它的局限性在于常规DLL只能导出标准C接口,不能导出C++类。但在常规DLL内部,仍然可以使用C++类及MFC类。
(3)常规DLL能够采用显示链接或隐式链接,而扩展DLL只能采用显示链接。
静态链接MFC的DLL与动态链接MFC的DLL的区别在于:
(1)静态链接MFC的DLL将拷贝所有需要的MFC的代码,成为自我包含的模块,可独立于MFC的DLL库而运行,但DLL的代码尺寸会较大。
(2)动态链接MFC的DLL在运行时动态链接MFC类库,因而DLL的代码尺寸会大大减小,但必须确保在运行的系统上有合适版本的MFC DLL库。

0 0
原创粉丝点击