description | title | ms.date | f1_keywords | helpviewer_keywords | ms.assetid | |||||
---|---|---|---|---|---|---|---|---|---|---|
Learn more about: COM Map Macros |
COM Map Macros |
11/04/2016 |
|
|
0f33656d-321f-4996-90cc-9a7f21ab73c3 |
These macros define COM interface maps.
Macro | Description |
---|---|
BEGIN_COM_MAP | Marks the beginning of the COM interface map entries. |
END_COM_MAP | Marks the end of the COM interface map entries. |
Header: atlcom.h
The COM map is the mechanism that exposes interfaces on an object to a client through QueryInterface
.
BEGIN_COM_MAP(x)
x
[in] The name of the class object you are exposing interfaces on.
CComObjectRootEx::InternalQueryInterface only returns pointers for interfaces in the COM map. Start your interface map with the BEGIN_COM_MAP macro, add entries for each of your interfaces with the COM_INTERFACE_ENTRY macro or one of its variants, and complete the map with the END_COM_MAP macro.
From the ATL BEEPER sample:
[!code-cppNVC_ATL_COM#1]
Ends the definition of your COM interface map.
END_COM_MAP()