Compartir a través de


Implementar la interfaz de control de eventos

ATL ayuda con los tres elementos necesarios para administrar eventos: implementar la interfaz de eventos, aconsejando el origen de eventos, y unadvising el origen de eventos.Los pasos exactos que necesitará realizar dependen del tipo de la interfaz de eventos y los requisitos de rendimiento de la aplicación.

Las maneras más comunes de implementar una interfaz mediante ATL son:

  • Derivar de una interfaz personalizada directamente.

  • Derivar de IDispatchImpl para las interfaces duales descritas en una biblioteca de tipos.

  • Derivar de IDispEventImpl para dispinterfaces descritos en una biblioteca de tipos.

  • Derivar de IDispEventSimpleImpl para dispinterfaces no descritos en una biblioteca de tipos o cuando se desea mejorar la eficacia no carga la información de tipo en tiempo de ejecución.

Si está implementando una interfaz personalizada o dual, debe advertir el origen de eventos llamando a AtlAdvise o CComPtrBase:: Advise.Necesitará hacer un seguimiento de la cookie devuelta por la llamada personalmente.llamada AtlUnadvise para interrumpir la conexión.

Si está implementando una dispinterface mediante IDispEventImpl o IDispEventSimpleImpl, debe advertir el origen de eventos llamando a IDispEventSimpleImpl:: DispEventAdvise.llamada IDispEventSimpleImpl:: DispEventUnadvise para interrumpir la conexión.

Si usa IDispEventImpl como clase base de un control compuesto, los orígenes de eventos enumerados en el mapa del receptor se aconsejable y sin haber recibido consejo algunos automáticamente mediante CComCompositeControl:: AdviseSinkMap.

las clases de IDispEventImpl y de IDispEventSimpleImpl administran la cookie para usted.

Vea también

Conceptos

Control de eventos y ATL