Implementing CComObjectRootEx
CComObjectRootEx 很重要;所有 ATL 物件都必須在其繼承中有一個 CComObjectRootEx 或 CComObjectRoot 執行個體。 CComObjectRootEx 提供以 COM 對應項目為基礎的預設 QueryInterface 機制。
透過其 COM 對應,當用戶端查詢介面時,物件的介面會公開給用戶端。 查詢是透過 CComObjectRootEx::InternalQueryInterface 執行。 InternalQueryInterface 只處理 COM 對應表格中的介面。
您可以用 COM_INTERFACE_ENTRY 巨集或其中一個變化,將介面輸入到 COM 對應表格。 例如,下列程式碼會將介面 IDispatch、IBeeper 和 ISupportErrorInfo 輸入到 COM 對應表格:
BEGIN_COM_MAP(CBeeper)
COM_INTERFACE_ENTRY(IBeeper)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY_TEAR_OFF(IID_ISupportErrorInfo, CBeeper2)
END_COM_MAP()
請參閱
參考
Fundamentals of ATL COM Objects