Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
[Solo se aplica a UMDF]
El método WdfDevicePostEvent notifica de forma asincrónica a las aplicaciones que esperan el evento especificado desde un controlador.
Sintaxis
NTSTATUS WdfDevicePostEvent(
[in] WDFDEVICE Device,
[in] REFGUID EventGuid,
[in] WDF_EVENT_TYPE WdfEventType,
[in] BYTE *Data,
[in] ULONG DataSizeCb
);
Parámetros
[in] Device
Identificador de un objeto de dispositivo de marco.
[in] EventGuid
GUID del evento. El GUID viene determinado por la aplicación y el controlador y es opaco para el marco.
[in] WdfEventType
Valor WDF_EVENT_TYPEcon tipo que identifica el tipo de evento. En la versión actual de UMDF, el controlador debe establecer eventType en WdfEventBroadcast (1). WdfEventBroadcast indica que el evento se transmite. Las aplicaciones pueden suscribirse a eventos WdfEventBroadcast-type. Para recibir eventos de difusión, la aplicación debe registrarse para recibir notificaciones a través de la función RegisterDeviceNotification de Microsoft Win3 2. eventos WdfEventBroadcast-type se exponen como eventos de tipo DBT_CUSTOMEVENT a las aplicaciones.
[in] Data
Puntero a un búfer que contiene datos asociados al evento. NULL es un valor válido.
[in] DataSizeCb
Tamaño, en bytes, de datos a los que apunta Datos. Cero es un valor de tamaño válido si Data está establecido en NULL.
Valor devuelto
Si la operación se realiza correctamente, WdfDevicePostEvent devuelve STATUS_SUCCESS. Entre los valores devueltos adicionales se incluyen:
| Código devuelto | Descripción |
|---|---|
|
WdfEventType no está establecido en WdfEventBroadcast. |
El método podría devolver otros valores ntstatus de .
Observaciones
Cuando el controlador llama a WdfDevicePostEvent para notificar a la aplicación solicitante sobre un evento, UMDF envía el evento al sistema operativo. El sistema operativo envía el evento a la aplicación solicitante en una operación asincrónica. Si inicialmente el sistema operativo no devuelve ningún error, WdfDevicePostEvent devuelve STATUS_SUCCESS.
Sin embargo, más adelante, si el sistema operativo recibe un error mientras intenta entregar el evento (posiblemente debido a una condición de memoria baja), el sistema operativo no puede informar al controlador sobre el error. Debido a la naturaleza asincrónica de esta notificación de eventos, no se garantiza la entrega del evento a la aplicación solicitante.
Si la información del evento se pierde en su camino hasta la aplicación solicitante, la aplicación debe poder recuperarse del evento perdido.
Requisitos
| Requisito | Valor |
|---|---|
| cliente mínimo admitido | Windows 8.1 |
| de la plataforma de destino de | Universal |
| versión mínima de UMDF | 2.0 |
| encabezado de | wdfdevice.h (incluya Wdf.h) |
| biblioteca de | WUDFx02000.lib |
| DLL de | WUDFx02000.dll |
| irQL | PASSIVE_LEVEL |