Windows Programming with Visual C++ & the MFC Library

5 Day Course
Hands On

This course has been retired. Please view currently available C and C++ Training Courses.


Collapse all

Getting Started (3 topics)

  • Key object-oriented design concepts
  • Generating a template application with the Visual C++ tools
  • Adding simple functions to the template

Windows, Messages and MFC (1 topic)

  • The fundamentals of the event-driven Windows operating system in relation to MFC

Building the User Interface with Visual C++ (2 topics)

  • Using the Visual C++ tools to add user interface components to the application
  • Resources and C++ classes

Message Maps and Command Routing (2 topics)

  • Routing user-input messages to the appropriate MFC object
  • Message-map functions and C++ virtual functions

MFC Windows (2 topics)

  • Relationship between a C++ window and the window of the underlying operating system
  • Relationships between windows on the screen

Dialogs and Dialog Templates (4 topics)

  • Using the Visual C++ tools to implement dialogs
  • Dialog Data Exchange
  • Notification messages
  • Message reflection

The MFC Document-View Model (2 topics)

  • How MFC implements documents and views
  • Organising multiple documents and views: SDI, MDI and splitter windows

Files, Archives and Serialisation (2 topics)

  • Saving and loading C++ objects to and from files
  • Schemas and exception handling

MFC Support for ODBC (2 topics)

  • ODBC overview; MFC support for DAO
  • Viewing and updating database records using MFC

Graphical Output (2 topics)

  • Overview of the Graphical Device Interface (GDI)
  • MFC support for GDI

Multitasking with Microsoft Windows (3 topics)

  • MFC and the Windows family of operating systems
  • Idle time processing
  • Using threads

Dynamic Linking and MFC (2 topics)

  • Building DLLs with the Visual C++ tools
  • Using DLLs with MFC

MFC Support for OLE Automation (4 topics)

  • The Component Object Model (COM)
  • C++ and interfaces
  • OLE Automation
  • OLE Controls (OCXs)


Delegates must have a minimum of three months practical experience using C++ or have attended the C++ for C Programmers or C++ for non-C Programmers courses. This should include a good understanding of C++ inheritance, overloaded function, constructors, destructors, new and delete operators, and virtual functions. Delegates should also be familiar with the Windows User Interface. No knowledge of graphical user interface or event-driven programming is assumed. C++ Programmers who will be developing Windows applications using Visual C++ and the MFC library.

Additional Learning

The courses below may help you meet the knowledge level required to take this course.

  • C++ Developer

    This 5-day course provides the skills needed to build programs using C++ that exploit all of the fundamental elements of the language.

    5 Day Course Hands On Training Course Code CPLUSDEV
    Classroom Virtual Classroom Private Group - Virtual Self-Paced Online

Course PDF