Condividi tramite


Funzione WdfDevicePostEvent (wdfdevice.h)

[Si applica solo a UMDF]

Il metodo WdfDevicePostEvent notifica in modo asincrono alle applicazioni in attesa dell'evento specificato da un driver.

Sintassi

NTSTATUS WdfDevicePostEvent(
  [in] WDFDEVICE      Device,
  [in] REFGUID        EventGuid,
  [in] WDF_EVENT_TYPE WdfEventType,
  [in] BYTE           *Data,
  [in] ULONG          DataSizeCb
);

Parametri

[in] Device

Handle per un oggetto dispositivo framework.

[in] EventGuid

GUID per l'evento. Il GUID è determinato dall'applicazione e dal driver ed è opaco al framework.

[in] WdfEventType

Valore WDF_EVENT_TYPE tipizzato che identifica il tipo di evento. Nella versione corrente di UMDF, il driver deve impostare EventType su WdfEventBroadcast (1). WdfEventBroadcast indica che l'evento viene trasmesso. Le applicazioni possono sottoscrivere eventi di tipo WdfEventBroadcast. Per ricevere eventi di trasmissione, l'applicazione deve registrarsi per la notifica tramite la funzione Microsoft Win32 RegisterDeviceNotification . Gli eventi di tipo WdfEventBroadcast vengono esposti come eventi di tipo DBT_CUSTOMEVENT alle applicazioni.

[in] Data

Puntatore a un buffer che contiene dati associati all'evento. NULL è un valore valido.

[in] DataSizeCb

Dimensioni, in byte, di dati a cui punta Dati . Zero è un valore di dimensione valido se i dati sono impostati su NULL.

Valore restituito

Se l'operazione ha esito positivo, WdfDevicePostEvent restituisce STATUS_SUCCESS. I valori restituiti aggiuntivi includono:

Codice restituito Descrizione
STATUS_INVALID_PARAMETER
WdfEventType non è impostato su WdfEventBroadcast.
 

Il metodo potrebbe restituire altri valori NTSTATUS.

Commenti

Quando il driver chiama WdfDevicePostEvent per notificare all'applicazione richiesta di un evento, UMDF invia l'evento al sistema operativo. Il sistema operativo invia l'evento all'applicazione di richiesta in un'operazione asincrona. Se il sistema operativo non restituisce inizialmente alcun errore, WdfDevicePostEvent restituisce STATUS_SUCCESS.

Tuttavia, in seguito, se il sistema operativo riceve un errore mentre tenta di recapitare l'evento (probabilmente a causa di una condizione di memoria ridotta), il sistema operativo non riesce a informare il driver sull'errore. A causa della natura asincrona di questa notifica evento, il recapito dell'evento all'applicazione di richiesta non è garantito.

Se le informazioni sugli eventi si perdono fino all'applicazione richiesta, l'applicazione deve essere in grado di recuperare dall'evento perso.

Requisiti

Requisito Valore
Client minimo supportato Windows 8.1
Piattaforma di destinazione Universale
Versione UMDF minima 2,0
Intestazione wdfdevice.h (includere Wdf.h)
Libreria WUDFx02000.lib
DLL WUDFx02000.dll
IRQL PASSIVE_LEVEL

Vedi anche

IWDFDevice::P ostEvent

WDF_EVENT_TYPE