CComObjectRootEx wykonawcze
CComObjectRootEx jest niezbędna; wszystkie obiekty ATL muszą posiadać jedno wystąpienie CComObjectRootEx lub CComObjectRoot w ich dziedziczenia.CComObjectRootExDomyślnie zawiera QueryInterface mechanizm oparty na COM wpisów map.
Za pośrednictwem jego mapy COM interfejsów obiektów są narażone na klienta, kiedy klient bada dla interfejsu.Kwerenda jest wykonywana przez CComObjectRootEx::InternalQueryInterface.InternalQueryInterfaceobsługuje tylko interfejsów COM tabeli mapy.
Interfejsy można wprowadzić w tabeli mapowania COM z COM_INTERFACE_ENTRY makro lub jednego z jego odmiany.Na przykład następujący kod z BEEPER próbki interfejsy wejścia IDispatch, IBeeper, i ISupportErrorInfo w tabeli mapowania COM:
BEGIN_COM_MAP(CBeeper)
COM_INTERFACE_ENTRY(IBeeper)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY_TEAR_OFF(IID_ISupportErrorInfo, CBeeper2)
END_COM_MAP()