Technical Notes by Category


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at Technical Notes by Category.

Technical notes are divided into the following categories. For a numerical listing of the technical notes, see Technical Notes by Number.

MFC and Windows

TN001: Window Class Registration
TN003: Mapping of Windows Handles to Objects
TN017: Destroying Window Objects
TN051: Using CTL3D Now and in the Future

MFC Architecture

TN002: Persistent Object Data Format
TN006: Message Maps
TN016: Using C++ Multiple Inheritance with MFC
TN021: Command and Message Routing
TN022: Standard Commands Implementation
TN025: Document, View, and Frame Creation
TN026: DDX and DDV Routines
TN029: Splitter Windows
TN030: Customizing Printing and Print Preview
TN031: Control Bars
TN032: MFC Exception Mechanism
TN037: Multithreaded MFC 2.1 Applications
TN044: MFC Support for DBCS
TN046: Commenting Conventions for the MFC Classes
TN058: MFC Module State Implementation
TN059: Using MFC MBCS/Unicode Conversion Macros
TN066: Common MFC 3.x to 4.0 Porting Issues

MFC Controls

TN014: Custom Controls
TN060: Windows Common Controls
TN061: ON_NOTIFY and WM_NOTIFY Messages
TN062: Message Reflection for Windows Controls

MFC Database

TN042: ODBC Driver Developer Recommendations
TN043: RFX Routines
TN045: MFC/Database Support for Long Varchar/Varbinary
TN047: Relaxing Database Transaction Requirements
TN048: Writing ODBC Setup and Administration Programs for MFC Database Applications
TN053: Custom DFX Routines for MFC DAO Classes
TN054: Calling DAO Directly While Using MFC DAO Classes
TN055: Migrating MFC ODBC Database Class Applications to MFC DAO Classes
TN068: Performing Transactions with the Microsoft Access 7 ODBC Driver


TN011: Using MFC as Part of a DLL
TN033: DLL Version of MFC
TN056: Installation of Localized MFC Components
TN057: Localization of MFC Components


TN038: MFC/OLE IUnknown Implementation
TN039: MFC/OLE Automation Implementation
TN040: MFC/OLE In-Place Resizing and Zooming
TN041: MFC/OLE1 Migration to MFC/OLE2
TN049: MFC/OLE MBCS to Unicode Translation Layer (MFCANS32)
TN050: MFC/OLE Common Dialogs (MFCUIx32)
TN064: Apartment-Model Threading in OLE Controls
TN065: Dual-Interface Support for OLE Automation Servers
TN071: MFC IOleCommandTarget Implementation

MFC Resources

TN020: ID Naming and Numbering Conventions
TN023: Standard MFC Resources
TN024: MFC-Defined Messages and Resources
TN028: Context-Sensitive Help Support
TN035: Using Multiple Resource Files and Header Files with Visual C++
TN036: Using CFormView with AppWizard and ClassWizard
TN070: MFC Window Class Names

MFC Internet

TN063: Debugging Internet Extension DLLs