Ejemplo COMEvents: muestra la creación y utilización de eventos en una aplicación administrada
Actualización: noviembre 2007
El ejemplo COMEvents ilustra el control de eventos mediante COM.
Nota de seguridad: |
---|
Este código de ejemplo se proporciona para ilustrar un concepto y no debe utilizarse en aplicaciones o sitios Web, ya que quizás no ilustre las prácticas de codificación más seguras. Microsoft no asume ninguna responsabilidad por daños incidentales o consecuentes en caso de que el código de ejemplo se utilice para propósitos distintos de aquellos para los que se concibió. |
Para obtener ejemplos e instrucciones para su instalación:
En el menú Ayuda de Visual Studio, haga clic en Ejemplos.
Para obtener más información, vea Localizar archivos de ejemplo.
La lista de ejemplos completa con la versión más reciente está disponible en línea en la página Visual Studio 2008 Samples.
También encontrará ejemplos en el disco duro de su equipo. De manera predeterminada, los ejemplos y el archivo Léame se copian en una carpeta bajo \Archivos de programa\Visual Studio 9.0\Samples\. Para las versiones Express de Visual Studio, todos los ejemplos están en línea.
Generar y ejecutar el ejemplo
Para generar y ejecutar NativeEvent
Abra el archivo de solución COMEvents.sln.
En el menú Generar, haga clic en Generar solución.
Haga clic con el botón secundario en el nodo EventReceiver del Explorador de soluciones y seleccione Establecer como proyecto de inicio.
En el menú Depurar, haga clic en Iniciar sin depurar.
Cómo funciona el ejemplo
El ejemplo COMEvents crea un origen de eventos CSource y un receptor de eventos CSink con los atributos event_source y event_receiver respectivamente.
El origen de eventos declara los métodos en las interfaces IEvent, IEvent2 e IJW como eventos (encontrará las definiciones de interfaces en Ifaces.h).
El receptor de eventos declara los métodos controladores de f1 a f6, y enlaza cada uno de estos controladores a un evento.
El código principal crea instancias de CSource y CSink. El constructor CSink establece el enlace. A continuación, el código principal desencadena los eventos, elimina el enlace a los eventos y vuelve a desencadenar los eventos.