If you look at the source code for ATL, you'll find ATL consists of a
collection of header files and C++ source code files. Most of it resides inside ATL's
Include directory. Here's a rundown of some of the ATL files and what's inside each
of them.
ATLBASE.H
This file contains:
This file contains:
These two source code files include support for Unicode conversions.
ATLCTL.CPP and ATLCTL.H
These two files contain:
ATLIFACE.IDL (which generates ATLIFACE.H) includes an
ATL-specific interface named IRegistrar.
ATLIMPL.CPP
ATLIMPL.CPP implements such classes as
CComBSTR, which is declared in ATLBASE.H.
ATLWIN.CPP and ATLWIN.H
These files provide windowing and user-interface support, including:
ATL features a COM component named the Registrar that handles putting appropriate entries into the Registry. The code for implementing this feature is in STATREG.H and STATREG.CPP.
Let's start our excursions into ATL by examining ATL's support for client-side COM development.