Udostępnij za pośrednictwem


Implementowanie klasy CComObjectRootEx

CComObjectRootEx jest niezbędne; wszystkie obiekty ATL muszą mieć jedno wystąpienie CComObjectRootEx lub CComObjectRoot w ich dziedziczeniu. CComObjectRootEx Udostępnia domyślny QueryInterface mechanizm oparty na wpisach mapy COM.

Za pośrednictwem mapy COM interfejsy obiektu są widoczne dla klienta, gdy klient wysyła zapytania dotyczące interfejsu. Zapytanie jest wykonywane za pomocą .CComObjectRootEx::InternalQueryInterface InternalQueryInterface obsługuje tylko interfejsy w tabeli mapy COM.

Interfejsy można wprowadzić do tabeli mapy COM za pomocą makra COM_INTERFACE_ENTRY lub jednego z jego wariantów. Na przykład poniższy kod wprowadza interfejsy IDispatch, IBeeperi ISupportErrorInfo do tabeli mapy COM:

BEGIN_COM_MAP(CBeeper)
   COM_INTERFACE_ENTRY(IBeeper)
   COM_INTERFACE_ENTRY(IDispatch)
   COM_INTERFACE_ENTRY_TEAR_OFF(IID_ISupportErrorInfo, CBeeper2)
END_COM_MAP()

Zobacz też

Podstawowe informacje na temat obiektów COM ATL
Makra mapy modelu COM