Upgrading from MFC Version 2.5

  • Support for 32-bit programming.

    MFC version 3.0 targets Win32 platforms, including Intel Win32s, Windows NT, and Windows 95, as well as the Macintosh® and Windows NT on MIPS, Alpha, and PowerPC platforms. The same MFC code works for all of the different targets.

  • Extended Win32 API coverage.

    The coverage includes new GDI functionality such as Beziers and Paths and a number of other Win32 “USER” APIs.

  • Support for C++ exceptions.

    MFC uses C++ exceptions. The MFC exception-handling macros are also provided for backward compatibility and compiler portability.

  • Collection classes based on C++ templates.

    These classes make it easier to derive your own type-safe collection classes.

  • Support for creating property sheets, also referred to as “tab dialog boxes,” in your programs.

    You can create property sheets containing tabs like those found in Microsoft Word for Windows version 6.0 and Visual C++. This support is in classes and .

  • Support for creating "dockable" tool bars in your programs.

    You can create toolbars that the user can drag to various parts of the main frame window. API member functions for dockable toolbars are in classes and .

  • Support for "tool tips" like those in Microsoft Excel.

    When the user moves the mouse over a toolbar button in your application, a small box is shown on top of the button to describe the action that would be performed.

  • Support for Unicode and Double-Byte Character Sets (DBCS).

    Your applications can be more easily internationalized using Unicode or DBCS strings.

  • Support for 3D controls.

    Simply call from your InitInstance function to get a three-dimensional appearance in your dialog boxes.

  • Support for frame windows with thin caption bars, such as those used for Visual C++ property windows.

    See class in the Class Library Reference.

  • Message-map support for ranges of command IDs and control IDs.

    For example, you can map a range of command IDs to a single message handler.

  • New member functions, such as Format, which resembles the sprintf run-time function.

  • Automatic linking of the correct version of the MFC library and any other required libraries, such as the Win32 libraries, OLE libraries, or ODBC libraries.