COM_INTERFACE_ENTRY2
Utilisez cette macro pour supprimer l'ambiguïté deux branches d'héritage.
COM_INTERFACE_ENTRY2( x, x2 )
Paramètres
x
[in] le nom d'une interface que vous souhaitez exposer de votre objet.x2
[in] Le nom de la branche d'héritage à partir duquel x est exposé.
Notes
Par exemple, si vous dérivez votre objet de classe de deux interfaces doubles, vous exposez IDispatch à l'aide de COM_INTERFACE_ENTRY2 comme IDispatch peut être obtenu à partir de l'un ou l'autre une des interfaces.
Consultez De macros COM_INTERFACE_ENTRY pour les notes sur les entrées de mappage COM.
Exemple
class ATL_NO_VTABLE CEntry2Example :
public CEntry2ExampleBase, // CEntry2ExampleBase derives from IDispatch
public IDispatchImpl<IEntry2Example, &IID_IEntry2Example, &LIBID_NVC_ATL_WindowingLib, /*wMajor =*/ 1, /*wMinor =*/ 0>,
public CComCoClass<CEntry2Example, &CLSID_Entry2Example>
{
public:
CEntry2Example()
{
}
BEGIN_COM_MAP(CEntry2Example)
COM_INTERFACE_ENTRY(IEntry2Example)
COM_INTERFACE_ENTRY2(IDispatch, IEntry2Example)
END_COM_MAP()
};
Configuration requise
Header: atlcom.h