ATL Classes
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at ATL Classes.
The Active Template Library (ATL) includes the following classes. To find a particular class by category, see the ATL Class Overview.
Class | Description | Header file |
---|---|---|
CA2AEX | This class is used by the string conversion macros CA2TEX and CT2AEX , and the typedef CA2A. |
atlconv.h |
CA2CAEX | This class is used by string conversion macros CA2CTEX and CT2CAEX , and the typedef CA2CA. |
atlconv.h |
CA2WEX | This class is used by the string conversion macros CA2TEX , CA2CTEX , CT2WEX , and CT2CWEX , and the typedef CA2W. |
atlconv.h |
CAccessToken | This class is a wrapper for an access token. | atlsecurity.h |
CAcl | This class is a wrapper for an ACL (access-control list) structure. | atlsecurity.h |
CAdapt | This template is used to wrap classes that redefine the address-of operator to return something other than the address of the object. | atlcomcli.h |
CAtlArray | This class implements an array object. | atlcoll.h |
CAtlAutoThreadModule | This class implements a thread-pooled, apartment-model COM server. | atlbase.h |
CAtlAutoThreadModuleT | This class provides methods for implementing a thread-pooled, apartment-model COM server. | atlbase.h |
CAtlBaseModule | This class is instantiated in every ATL project. | atlcore.h |
CAtlComModule | This class implements a COM server module. | atlbase.h |
CAtlDebugInterfacesModule | This class provides support for debugging interfaces. | atlbase.h |
CAtlDllModuleT | This class represents the module for a DLL. | atlbase.h |
CAtlException | This class defines an ATL exception. | atlexcept.h |
CAtlExeModuleT | This class represents the module for an application. | atlbase.h |
CAtlFile | This class provides a thin wrapper around the Windows file-handling API. | atlfile.h |
CAtlFileMapping | This class represents a memory-mapped file, adding a cast operator to the methods of CAtlFileMappingBase. | atlfile.h |
CAtlFileMappingBase | This class represents a memory-mapped file. | atlfile.h |
CAtlList | This class provides methods for creating and managing a list object. | atlcoll.h |
CAtlMap | This class provides methods for creating and managing a map object. | atlcoll.h |
CAtlModule | This class provides methods used by several ATL module classes. | atlbase.h |
CAtlModuleT | This class implements an ATL module. | atlbase.h |
CAtlPreviewCtrlImpl | This class is an ATL implementation of a window that is placed on a host window provided by the Shell for Rich Preview. | atlpreviewctrlimpl.h |
CAtlServiceModuleT | This class implements a service. | atlbase.h |
CAtlTemporaryFile | This class provides methods for the creation and use of a temporary file. | atlfile.h |
CAtlTransactionManager | This class provides a wrapper to Kernel Transaction Manager (KTM) functions. | atltransactionmanager.h |
CAtlWinModule | This class provides support for ATL windowing components. | atlbase.h |
CAutoPtr | This class represents a smart pointer object. | atlbase.h |
CAutoPtrArray | This class provides methods useful when constructing an array of smart pointers. | atlbase.h |
CAutoPtrElementTraits | This class provides methods, static functions, and typedefs useful when creating collections of smart pointers. | atlcoll.h |
CAutoPtrList | This class provides methods useful when constructing a list of smart pointers. | atlcoll.h |
CAutoVectorPtr | This class represents a smart pointer object using vector new and delete operators. | atlbase.h |
CAutoVectorPtrElementTraits | This class provides methods, static functions, and typedefs useful when creating collections of smart pointers using vector new and delete operators. | atlcoll.h |
CAxDialogImpl | This class implements a dialog box (modal or modeless) that hosts ActiveX controls. | atlwin.h |
CAxWindow | This class provides methods for manipulating a window hosting an ActiveX control. | atlwin.h |
CAxWindow2T | This class provides methods for manipulating a window that hosts an ActiveX control and also has support for hosting licensed ActiveX controls. | atlwin.h |
CBindStatusCallback | This class implements the IBindStatusCallback interface. |
atlctl.h |
CComAggObject | This class implements IUnknown for an aggregated object. | atlcom.h |
CComAllocator | This class provides methods for managing memory using COM memory routines. | atlbase.h |
CComApartment | This class provides support for managing an apartment in a thread-pooled EXE module. | atlbase.h |
CComAutoCriticalSection | This class provides methods for obtaining and releasing ownership of a critical section object. | atlcore.h |
CComAutoThreadModule | As of ATL 7.0, CComAutoThreadModule is obsolete: see ATL Modules for more details. |
atlbase.h |
CComBSTR | This class is a wrapper for BSTR s. |
atlbase.h |
CComCachedTearOffObject | This class implements IUnknown for a tear-off interface. | atlcom.h |
CComClassFactory | This class implements the IClassFactory interface. | atlcom.h |
CComClassFactory2 | This class implements the IClassFactory2 interface. | atlcom.h |
CComClassFactoryAutoThread | This class implements the IClassFactory interface and allows objects to be created in multiple apartments. | atlcom.h |
CComClassFactorySingleton | This class derives from CComClassFactory and uses CComObjectGlobal to construct a single object. | atlcom.h |
CComCoClass | This class provides methods for creating instances of a class and obtaining its properties. | atlcom.h |
CComCompositeControl | This class provides the methods required to implement a composite control. | atlctl.h |
CComContainedObject | This class implements IUnknown by delegating to the owner object's IUnknown. | atlcom.h |
CComControl | This class provides methods for creating and managing ATL controls. | atlctl.h |
CComControlBase | This class provides methods for creating and managing ATL controls. | atlctl.h |
CComCriticalSection | This class provides methods for obtaining and releasing ownership of a critical section object. | atlcore.h |
CComCritSecLock | This class provides methods for locking and unlocking a critical section object. | atlbase.h |
CComCurrency | This class has methods and operators for creating and managing a CURRENCY object. |
atlcur.h |
CComDynamicUnkArray | This class stores an array of IUnknown pointers. | atlcom.h |
CComEnum | This class defines a COM enumerator object based on an array. | atlcom.h |
CComEnumImpl | This class provides the implementation for a COM enumerator interface where the items being enumerated are stored in an array. | atlcom.h |
CComEnumOnSTL | This class defines a COM enumerator object based on an STL collection. | atlcom.h |
CComFakeCriticalSection | This class provides the same methods as CComCriticalSection but does not provide a critical section. | atlcore.h |
CComGITPtr | This class provides methods for dealing with interface pointers and the global interface table (GIT). | atlbase.h |
CComHeap | This class implements IAtlMemMgr using the COM memory allocation functions. | ATLComMem.h |
CComHeapPtr | A smart pointer class for managing heap pointers. | atlbase.h |
CComModule | As of ATL 7.0, CComModule is obsolete: see ATL Modules for more details. |
atlbase.h |
CComMultiThreadModel | This class provides thread-safe methods for incrementing and decrementing the value of a variable. | atlbase.h |
CComMultiThreadModelNoCS | This class provides thread-safe methods for incrementing and decrementing the value of a variable, without critical section locking or unlocking functionality. | atlbase.h |
CComObject | This class implements IUnknown for a nonaggregated object. | atlcom.h |
CComObjectGlobal | This class manages a reference count on the module containing your Base object. |
atlcom.h |
CComObjectNoLock | This class implements IUnknown for a nonaggregated object, but does not increment the module lock count in the constructor. | atlcom.h |
CComObjectRoot | This typedef of CComObjectRootEx is templatized on the default threading model of the server. | atlcom.h |
CComObjectRootEx | This class provides methods to handle object reference count management for both nonaggregated and aggregated objects. | atlcom.h |
CComObjectStack | This class creates a temporary COM object and provides it with a skeletal implementation of IUnknown. | atlcom.h |
CComPolyObject | This class implements IUnknown for an aggregated or nonaggregated object. | atlcom.h |
CComPtr | A smart pointer class for managing COM interface pointers. | atlcomcli.h |
CComPtrBase | This class provides a basis for smart pointer classes using COM-based memory routines. | atlcomcli.h |
CComQIPtr | A smart pointer class for managing COM interface pointers. | atlcomcli.h |
CComQIPtrElementTraits | This class provides methods, static functions, and typedefs useful when creating collections of COM interface pointers. | atlcoll.h |
CComSafeArray | This class is a wrapper for the SAFEARRAY Data Type structure. |
atlsafe.h |
CComSafeArrayBound | This class is a wrapper for a SAFEARRAYBOUND structure. |
atlsafe.h |
CComSimpleThreadAllocator | This class manages thread selection for the class CComAutoThreadModule. | atlbase.h |
CComSingleThreadModel | This class provides methods for incrementing and decrementing the value of a variable. | atlbase.h |
CComTearOffObject | This class implements a tear-off interface. | atlcom.h |
CComUnkArray | This class stores IUnknown pointers and is designed to be used as a parameter to the IConnectionPointImpl template class. | atlcom.h |
CComVariant | This class wraps the VARIANT type, providing a member indicating the type of data stored. | atlcomcli.h |
CContainedWindowT | This class implements a window contained within another object. | atlwin.h |
CCRTAllocator | This class provides methods for managing memory using CRT memory routines. | atlcore.h |
CCRTHeap | This class implements IAtlMemMgr using the CRT heap functions. | atlmem.h |
CDacl | This class is a wrapper for a DACL (discretionary access-control list) structure. | atlsecurity.h |
CDebugReportHook Class | Use this class to send debug reports to a named pipe. | atlutil.h |
CDefaultCharTraits | This class provides two static functions for converting characters between uppercase and lowercase. | atlcoll.h |
CDefaultCompareTraits | This class provides default element comparison functions. | atlcoll.h |
CDefaultElementTraits | This class provides default methods and functions for a collection class. | atlcoll.h |
CDefaultHashTraits | This class provides a static function for calculating hash values. | atlcoll.h |
CDialogImpl | This class provides methods for creating a modal or modeless dialog box. | atlwin.h |
CDynamicChain | This class provides methods supporting the dynamic chaining of message maps. | atlwin.h |
CElementTraits | This class is used by collection classes to provide methods and functions for moving, copying, comparison, and hashing operations. | atlcoll.h |
CElementTraitsBase | This class provides default copy and move methods for a collection class. | atlcoll.h |
CFirePropNotifyEvent | This class provides methods for notifying the container's sink regarding control property changes. | atlctl.h |
CGlobalHeap | This class implements IAtlMemMgr using the Win32 global heap functions. | atlmem.h |
CHandle | This class provides methods for creating and using a handle object. | atlbase.h |
CHeapPtr | A smart pointer class for managing heap pointers. | atlcore.h |
CHeapPtrBase | This class forms the basis for several smart heap pointer classes. | atlcore.h |
CHeapPtrElementTraits Class | This class provides methods, static functions, and typedefs useful when creating collections of heap pointers. | atlcoll.h |
CHeapPtrList | This class provides methods useful when constructing a list of heap pointers. | atlcoll.h |
CImage | Provides enhanced bitmap support, including the ability to load and save images in JPEG, GIF, BMP, and Portable Network Graphics (PNG) formats. | atlimage.h |
CInterfaceArray | This class provides methods useful when constructing an array of COM interface pointers. | atlcoll.h |
CInterfaceList | This class provides methods useful when constructing a list of COM interface pointers. | atlcoll.h |
CLocalHeap | This class implements IAtlMemMgr using the Win32 local heap functions. | atlmem.h |
CMessageMap | This class allows an object's message maps to be accessed by another object. | atlwin.h |
CNonStatelessWorker Class | Receives requests from a thread pool and passes them on to a worker object that is created and destroyed on each request. | atlutil.h |
CNoWorkerThread Class | Use this class as the argument for the MonitorClass template parameter cache classes if you want to disable dynamic cache maintenance. |
atlutil.h |
CPathT Class | This class represents a path. | atlpath.h |
CPrimitiveElementTraits | This class provides default methods and functions for a collection class composed of primitive data types. | atlcoll.h |
CPrivateObjectSecurityDesc | This class represents a private object security descriptor object. | atlsecurity.h |
CRBMap | This class represents a mapping structure, using a Red-Black binary tree. | atlcoll.h |
CRBMultiMap | This class represents a mapping structure that allows each key to be associated with more than one value, using a Red-Black binary tree. | atlcoll.h |
CRBTree | This class provides methods for creating and utilizing a Red-Black tree. | atlcoll.h |
CRegKey | This class provides methods for manipulating entries in the system registry. | atlbase.h |
CRTThreadTraits | This class provides the creation function for a CRT thread. Use this class if the thread will use CRT functions. | atlbase.h |
CSacl | This class is a wrapper for a SACL (system access-control list) structure. | atlsecurity.h |
CSecurityAttributes | This class is a thin wrapper for the SECURITY_ATTRIBUTES structure. | atlsecurity.h |
CSecurityDesc | This class is a wrapper for the SECURITY_DESCRIPTOR structure. | atlsecurity.h |
CSid | This class is a wrapper for a SID (security identifier) structure. |
atlsecurity.h |
CSimpleArray | This class provides methods for managing a simple array. | atlsimpcoll.h |
CSimpleArrayEqualHelper | This class is a helper for the CSimpleArray class. | atlsimpcoll.h |
CSimpleArrayEqualHelperFalse | This class is a helper for the CSimpleArray class. | atlsimpcoll.h |
CSimpleDialog | This class implements a basic modal dialog box. | atlwin.h |
CSimpleMap | This class provides support for a simple mapping array. | atlsimpcoll.h |
CSimpleMapEqualHelper | This class is a helper for the CSimpleMap class. | atlsimpcoll.h |
CSimpleMapEqualHelperFalse | This class is a helper for the CSimpleMap class. | atlsimpcoll.h |
CSnapInItemImpl | This class provides methods for implementing a snap-in node object. | atlsnap.h |
CSnapInPropertyPageImpl | This class provides methods for implementing a snap-in property page object. | atlsnap.h |
CStockPropImpl | This class provides methods for supporting stock property values. | atlctl.h |
CStringElementTraits | This class provides static functions used by collection classes storing CString objects. |
cstringt.h |
CStringElementTraitsI | This class provides static functions related to strings stored in collection class objects. It is similar to CStringElementTraits, but performs case-insensitive comparisons. | atlcoll.h |
CStringRefElementTraits | This class provides static functions related to strings stored in collection class objects. The string objects are dealt with as references. | atlcoll.h |
CThreadPool Class | This class provides a pool of worker threads that process a queue of work items. | atlutil.h |
CTokenGroups | This class is a wrapper for the TOKEN_GROUPS structure. | atlsecurity.h |
CTokenPrivileges | This class is a wrapper for the TOKEN_PRIVILEGES structure. | atlsecurity.h |
CUrl Class | This class represents a URL. It allows you to manipulate each element of the URL independently of the others whether parsing an existing URL string or building a string from scratch. | atlutil.h |
CW2AEX | This class is used by the string conversion macros CT2AEX , CW2TEX , CW2CTEX , and CT2CAEX , and the typedef CW2A. |
atlconv.h |
CW2CWEX | This class is used by the string conversion macros CW2CTEX and CT2CWEX , and the typedef CW2CW. |
atlconv.h |
CW2WEX | This class is used by the string conversion macros CW2TEX and CT2WEX , and the typedef CW2W . |
atlconv.h |
CWin32Heap | This class implements IAtlMemMgr using the Win32 heap allocation functions. | atlmem.h |
CWindow | This class provides methods for manipulating a window. | atlwin.h |
CWindowImpl | This class provides methods for creating or subclassing a window. | atlwin.h |
CWinTraits | This class provides a method for standardizing the styles used when creating a window object. | atlwin.h |
CWinTraitsOR | This class provides a method for standardizing the styles used when creating a window object. | atlwin.h |
CWndClassInfo | This class provides methods for registering information for a window class. | atlwin.h |
CWorkerThread Class | This class creates a worker thread or uses an existing one, waits on one or more kernel object handles, and executes a specified client function when one of the handles is signaled. | atlutil.h |
IAtlAutoThreadModule | This class represents an interface to a CreateInstance method. |
atlbase.h |
IAtlMemMgr | This class represents the interface to a memory manager. | atlmem.h |
IAxWinAmbientDispatch | This interface provides methods for specifying characteristics of the hosted control or container. | atlbase.h, ATLIFace.h |
IAxWinAmbientDispatchEx | This interface implements supplemental ambient properties for a hosted control. | atlbase.h, ATLIFace.h |
IAxWinHostWindow | This interface provides methods for manipulating a control and its host object. | atlbase.h, ATLIFace.h |
IAxWinHostWindowLic | This interface provides methods for manipulating a licensed control and its host object. | atlbase.h, ATLIFace.h |
ICollectionOnSTLImpl | This class provides methods used by a collection class. | atlcom.h |
IConnectionPointContainerImpl | This class implements a connection point container to manage a collection of IConnectionPointImpl objects. | atlcom.h |
IConnectionPointImpl | This class implements a connection point. | atlcom.h |
IDataObjectImpl | This class provides methods for supporting Uniform Data Transfer and managing connections. | atlctl.h |
IDispatchImpl | This class provides a default implementation for the IDispatch portion of a dual interface. |
atlcom.h |
IDispEventImpl | This class provides implementations of the IDispatch methods. |
atlcom.h |
IDispEventSimpleImpl | This class provides implementations of the IDispatch methods, without getting type information from a type library. |
atlcom.h |
IDocHostUIHandlerDispatch | An interface to the Microsoft HTML parsing and rendering engine. | atlbase.h, ATLIFace.h |
IEnumOnSTLImpl | This class defines an enumerator interface based on an STL collection. | atlcom.h |
IObjectSafetyImpl | This class provides a default implementation of the IObjectSafety interface to allow a client to retrieve and set an object's safety levels. |
atlctl.h |
IObjectWithSiteImpl | This class provides methods allowing an object to communicate with its site. | atlcom.h |
IOleControlImpl | This class provides a default implementation of the IOleControl interface and implements IUnknown. | atlctl.h |
IOleInPlaceActiveObjectImpl | This class provides methods for assisting communication between an in-place control and its container. | atlctl.h |
IOleInPlaceObjectWindowlessImpl | This class implements IUnknown and provides methods that enable a windowless control to receive window messages and to participate in drag-and-drop operations. | atlctl.h |
IOleObjectImpl | This class implements IUnknown and is the principal interface through which a container communicates with a control. | atlctl.h |
IPerPropertyBrowsingImpl | This class implements IUnknown and allows a client to access the information in an object's property pages. | atlctl.h |
IPersistPropertyBagImpl | This class implements IUnknown and allows an object to save its properties to a client-supplied property bag. | atlcom.h |
IPersistStorageImpl | This class implements the IPersistStorage interface. | atlcom.h |
IPersistStreamInitImpl | This class implements IUnknown and provides a default implementation of the IPersistStreamInit interface. | atlcom.h |
IPointerInactiveImpl | This class implements IUnknown and the IPointerInactive interface methods. | atlctl.h |
IPropertyNotifySinkCP | This class exposes the IPropertyNotifySink interface as an outgoing interface on a connectable object. | atlctl.h |
IPropertyPage2Impl | This class implements IUnknown and inherits the default implementation of IPropertyPageImpl. | atlctl.h |
IPropertyPageImpl | This class implements IUnknown and provides a default implementation of the IPropertyPage interface. | atlctl.h |
IProvideClassInfo2Impl | This class provides a default implementation of the IProvideClassInfo and IProvideClassInfo2 methods. | atlcom.h |
IQuickActivateImpl | This class combines containers' control initialization into a single call. | atlctl.h |
IRunnableObjectImpl | This class implements IUnknown and provides a default implementation of the IRunnableObject interface. | atlctl.h |
IServiceProviderImpl | This class provides a default implementation of the IServiceProvider interface. |
atlcom.h |
ISpecifyPropertyPagesImpl | This class implements IUnknown and provides a default implementation of the ISpecifyPropertyPages interface. | atlcom.h |
ISupportErrorInfoImpl | This class provides a default implementation of the ISupportErrorInfo Interface interface and can be used when only a single interface generates errors on an object. |
atlcom.h |
IThreadPoolConfig Interface | This interface provides methods for configuring a thread pool. | atlutil.h |
IViewObjectExImpl | This class implements IUnknown and provides default implementations of the IViewObject, IViewObject2, and IViewObjectEx interfaces. | atlctl.h |
IWorkerThreadClient Interface | IWorkerThreadClient is the interface implemented by clients of the CWorkerThread class. |
atlutil.h |
_U_MENUorID | This class provides wrappers for CreateWindow and CreateWindowEx. | atlwin.h |
_U_RECT | This argument adapter class allows either RECT pointers or references to be passed to a function that is implemented in terms of pointers. |
atlwin.h |
_U_STRINGorID | This argument adapter class allows either resource names (LPCTSTR s) or resource IDs (UINTs) to be passed to a function without requiring the caller to convert the ID to a string using the MAKEINTRESOURCE macro. |
atlwin.h |
Win32ThreadTraits | This class provides the creation function for a Windows thread. Use this class if the thread will not use CRT functions. | atlbase.h |
See Also
ATL COM Desktop Components
Functions
Global Variables
Structures
Typedefs
Class Overview