MFC and Visual C++ Version Numbers
The various versions of MFC shipped with Visual C++ as listed in the following table.
MFC | Visual C++ |
---|---|
MFC version 1.0 | Microsoft C/C++ version 7.0 |
MFC version 2.0 | Visual C++ version 1.0 |
MFC version 2.5 | Visual C++ version 1.5 |
MFC version 3.0 | Visual C++ version 2.0 |
MFC version 3.1 | Visual C++ version 2.1 |
MFC version 3.2 | Visual C++ version 2.2 |
MFC version 4.0 | Visual C++ version 4.0 |
MFC version 4.1 | Visual C++ version 4.1 |
MFC version 4.2 | Visual C++ version 4.2 |
MFC version 4.21 (still mfc42.dll) | Visual C++ version 5.0 |
MFC version 6.0 (still mfc42.dll) | Visual C++ version 6.0 |
MFC version 7.0 (mfc70.dll) | Visual C++ .NET 2002 |
MFC version 7.1 (mfc71.dll) | Visual C++ .NET 2003 |
各版本的特性:(Changes in MFC Versions)
MFC version 1.0:---->Microsoft C/C++ version 7.0
1.Windows API 的C++接口;
2.一般类(非面向Windows),其中包括:
1.1有关链表、数组及映射的集合类
1.2用途广泛并且功能强大的字符品类
1.3时间、时间间隔及日期类
1.4独立于操作系统的文件访问类
1.5支持对象有组织地在磁盘中进行传递
3. “通用根对象"类层次结构
4.支持高效的多文档接口(MDI)应用程序
5.有效地支持OLE1.0版
MFC Version 2.0----->Visual C++ version 1.0
该版本对1.0版进行了进一步扩充,能够支持更多的现有的基于Windows的应用程序中能够见到的用户接口特性,还引进了应用程序框架结构,下面是它在1.0基础上的一些新的特性:
1.全面支持File Open,Save和Save As菜单项,以及最近使用文件列表
2.支持打印预览和各种打印机
3.支持滚动窗口(scrolling window)和拆分窗口(splitter window)
4.支持工具栏和状态栏
5.可以处理Microsoft Visual Basic控件
6,支持上下文相关帮助
7.自动处理对话框中输入的数据
8.改进了同OLE1.0的接口
9.支持DLL
MFC Version 2.5----->Visual C++ version 1.5
1.支持ODBC(开放数据库连接性),这样我们自己的应用程序就可以对存储在许多常见数据库(如Microsoft Access,Foxpro以及Microsoft SQL Server等)中的数据进行访问和更新了.
2.增加了同OLE2.01版的接口,支持实地编辑、链接、拖放以及OLE自动化等特性
MFC Version 3.0----->Visual C++ version 2.0
它包含在Visual C++ 2.0版本中,是第一个32版本的产品,它支持Mircosoft Windows NT 3.5,该版本有以下一些新的特性:
1.支持标签对话框(属性表,property sheet)(该特性也被加到了在同一张CD-ROM上的Visual C++ 1.51版中)
2.在MFC中实现了贴边控制栏(docking control bar)
3.支持细框架窗口
4.一个独立的控件开发工具(CDK),可用于建立16位和32位控件,但没有提供OLE控件包容器支持
MFC Version 3.1----->Visual C++ version 2.1
该版本中加入一些新的特性:
1.支持新的Mircosoft Windows 95(beta)的通用控件
2.新的与Access Jet数据库引擎集成的ODBC 2级驱动程序
3.支持TCP/IP数据通讯的Winsock类
MFC version 3.2----->Visual C++ version 2.2
This article describes the most common problems that can occur when porting an application written with MFC 3.x (the MFC included with Visual C++ 2.x) to MFC 4.x. The following porting issues are discussed:
- Window classes are no longer pre-registered by MFC.
- CWinApp::m_templateList no longer exists.
- CRuntimeClass::m_pfnConstruct is now m_pfnCreateObject.
- Changes in CStatusBar and CToolBar implementation can break previous code.
- Changes in CPropertySheet implementation can break previous code.
- CPropertySheet always changes its font to the default font.
- Do property sheet modifications in OnInitDialog after a call to the base class.
- CPropertySheet::DoModal causes a first chance exception on Windows 95 (the exception can be ignored).
- Property sheets now have a minimum width.
- CToolBar requires a minimum button size.
- Do not replace CFileDialog's default hook procedure.
- Altering CFileDialog's standard Explorer interface requires a call to GetParent.
- CFileDialog member functions GetFileName and GetFileTitle are functionally reversed.
- MFC threads cannot be created during DLL startup.
- Regular DLLs using the MFC shared library require AFX_MANAGE_STATE in exported functions.
- MFCANS32.DLL no longer exists: OLE functions in MFC applications now require Unicode arguments.
MFC Version 4.0
Mircosoft 为了使Visual C++产品的版本与MFC的版本一致,决定跳过Visual C++ 3.0,直接进入4.0,MFC 4.0版加入了以下特性:
1.新的与Jet引擎结合的基于OLE的数据访问对象(Data Access Objects, DAO)
2.用Windows 95的贴边控制栏代替了MFC控制栏
3.完全支持Windows 95正式版本的通用控件,包括新的树状视图类和RichEdit视图类
4.线程同步所需的类
5.OLE控件包容器支持
MFC Version 4.1----->Visual C++ version 4.1
This article covers the following topics on changes from MFC versions 4.x:
- Internet Server Classes
- Internet Programming Support (wrappers of the new Win32 Internet (WinInet) and ActiveX control technology)
- ODBC Feature Enhancements (including support for multithreading and bulk row fetching)
- Remote Data Accessibility and Data Binding (controls that you can bind to local or remote data sources)
- Support for Mouse Scroll Wheel (such as the one on the Microsoft IntelliMouse) added to CScrollView
- Other New MFC Classes
- Change in COleDateTime
MFC Version 4.2----->Visual C++ version 4.2
它引入的一些新的特性:
1.WinInet类
2.ActiveX文档类
3.ActiveX类同步和moniker类
4.增强的MFC ActiveX控件类,包括无窗口激活、优化绘制代码等特性
5.改进的MFC ODBC支持,包括记录集大批数据获取和在没有绑定时的数据传输
MFC Version 4.21(still mfc42.dll)----->Visual C++ version 5.0
它修补了MFC V4.2中一些错误,同时有一些非常好的特性:
1.重新设计的IDE--Developer Studio 97--包括了一个基于HTML的联机帮助系统,同时综合其它(包括Java)语言
2.ActiveX模板类(ATL)可以为Internet构造更有效的ActiveX控件
3.COM(组件对象模型)客户程序的C++语言支持,针对类型库可以使用新的#import语言
MFC version 6.0(still mfc42.dll)----->Visual C++ version 6.0
......
MFC version 7.0(mfc70.dll)----->Visual C++ .NET 2002
......
MFC Version 7.1(mfc71.dll)----->Visual C++ .NET 2003