Implementando CComObjectRootEx
CComObjectRootEx é essencial; todos os objetos de ATL devem ter uma instância de CComObjectRootEx ou de CComObjectRoot em sua herança.CComObjectRootEx fornece o mecanismo de QueryInterface de opção com base em entradas de mapa COM.
Através de seu mapa COM, as interfaces de um objeto são expostos a um cliente quando o cliente consulta para uma interface.a consulta é executada com CComObjectRootEx::InternalQueryInterface.InternalQueryInterface trata apenas interfaces na tabela do mapa da.
Você pode inserir interfaces na tabela do mapa de COM com a macro de COM_INTERFACE_ENTRY ou um dos seus variantes.Por exemplo, o seguinte código de Exemplo de SINALIZADOR insere as interfaces IDispatch, IBeeper, e ISupportErrorInfo na tabela do mapa de COM:
BEGIN_COM_MAP(CBeeper)
COM_INTERFACE_ENTRY(IBeeper)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY_TEAR_OFF(IID_ISupportErrorInfo, CBeeper2)
END_COM_MAP()
Consulte também
Referência
Fundamentos de objetos COM de ATL