Partager via


Implémentation de CComObjectRootEx

CComObjectRootEx est essentiel ; tous les objets ATL doivent avoir une instance ou CComObjectRootEx CComObjectRoot dans leur héritage. CComObjectRootEx fournit le mécanisme QueryInterface par défaut en fonction des entrées de la mappe COM.

Via sa mappe COM, les interfaces d'un objet sont exposées à un client quand celui-ci émet une requête pour une interface. La requête est effectuée via CComObjectRootEx::InternalQueryInterface. InternalQueryInterface gère seulement des interfaces dans le tableau de mappage COM.

Vous pouvez entrer des interfaces dans la table de mappage COM avec la macro COM_INTERFACE_ENTRY ou l’une de ses variantes. Par exemple, le code suivant entre les interfaces IDispatch, IBeeper et ISupportErrorInfo dans le tableau de mappage COM :

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

Voir aussi

Principes de base des objets ATL COM
Macros de mappage COM