Función NotifyWinEvent (winuser.h)

Indica al sistema que se ha producido un evento predefinido. Si alguna aplicación cliente ha registrado una función de enlace para el evento, el sistema llama a la función de enlace del cliente.

Sintaxis

void NotifyWinEvent(
  [in] DWORD event,
  [in] HWND  hwnd,
  [in] LONG  idObject,
  [in] LONG  idChild
);

Parámetros

[in] event

Tipo: DWORD

Especifica el evento que ha tenido lugar. Este valor debe ser una de las constantes de evento.

[in] hwnd

Tipo: HWND

Identificador de la ventana que contiene el objeto que generó el evento.

[in] idObject

Tipo: LONG

Identifica el objeto que generó el evento. Este valor es uno de los identificadores de objeto predefinidos o un valor de identificador de objeto personalizado.

[in] idChild

Tipo: LONG

Identifica si un objeto o un elemento secundario del objeto generó el evento. Si este valor es CHILDID_SELF, el propio objeto generó el evento. Si no CHILDID_SELF, este valor es el identificador secundario del elemento que generó el evento.

Valor devuelto

None

Observaciones

Los servidores llaman a esta función para notificar al sistema que se ha producido un evento. Microsoft Active Accessibility comprueba si alguna aplicación cliente ha establecido procedimientos de enlace para el evento y, si es así, llama a los procedimientos de enlace adecuados.

Si no se registra ningún procedimiento de enlace para el evento, la penalización de rendimiento para llamar a esta función es menor.

Los servidores llaman a NotifyWinEvent para anunciar el evento al sistema después de que se haya producido el evento; nunca deben notificar al sistema de un evento antes de que se haya producido el evento.

Cuando se llama al procedimiento de enlace del cliente, recibe una serie de parámetros que describen el evento y el objeto que generó el evento. El procedimiento de enlace usa la función AccessibleObjectFromEvent para recuperar un puntero a la interfaz IAccessible del objeto que generó el evento.

Los servidores pueden recibir un mensaje de WM_GETOBJECT inmediatamente después de llamar a esta función. Esto puede ocurrir si hay algún cliente en contexto que llame a AccessibleObjectFromEvent en la devolución de llamada del evento.

Cuando los servidores llaman a esta función, deben estar listos para controlar WM_GETOBJECT, devolver un puntero de interfaz IAccessible y controlar cualquiera de los métodos IAccessible .

Nota para desarrolladores de servidores: Al llamar a NotifyWinEvent, si algún cliente escucha ese evento en contexto, sus controladores de eventos, que normalmente envían WM_GETOBJECT y llaman a métodos IAccessible , se ejecutarán antes de que NotifyWinEvent devuelva. Al llamar a NotifyWinEvent, debe estar preparado para controlar estas llamadas, si se producen. Si necesita realizar una configuración adicional para permitir esto, debe hacerlo antes de llamar a NotifyWinEvent, no después.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluir Windows.h)
Library User32.lib
Archivo DLL User32.dll
Redistribuible RDK de accesibilidad activa 1.3 en Windows NT 4.0 con SP6 y versiones posteriores y Windows 95
Conjunto de API ext-ms-win-ntuser-server-l1-1-0 (introducido en Windows 8)

Consulte también

AccessibleObjectFromEvent

SetWinEventHook

UnHookWinEvent

WinEvents