Details of ATL Support Added by the ATL Wizard

When you add ATL support to an existing MFC executable or DLL, Visual C++ makes the following modifications to the existing MFC project (in this example, the project is called MFCEXE):

  • Two new files (an .idl file and an .rgs file, used to register the server) are added.

  • In the main application header and implementation files (Mfcexe.h and Mfcexe.cpp), a new class (derived from CAtlMFCModule) is added. In addition to the new class, code is added to InitInstance for registration. Code is also added to the ExitInstance function for revoking the class object. In the header file, Finally, two new header files (Initguid.h and Mfcexe_i.c) are included in the implementation file, declaring and initializing the new GUIDs for the CAtlMFCModule-derived class.

  • To register the server properly, an entry for the new .rgs file is added to the project's resource file.

Notes for DLL Projects

When you add ATL support to an MFC DLL project, you will see some differences. Code is added to the DLLRegisterServer and DLLUnregisterServer functions for registering and unregistering the DLL. Code is also added to DllCanUnloadNow and DllGetClassObject.

See Also

Tasks

Adding ATL Support to Your MFC Project

Adding a Member Function (Visual C++)

Adding a Member Variable (Visual C++)

Overriding a Virtual Function (Visual C++)

Reference

Navigating the Class Structure (Visual C++)

Concepts

Adding Functionality with Code Wizards

Adding a Class (Visual C++)

Adding an MFC Message Handler