Partager via


WdfDevicePostEvent, fonction (wdfdevice.h)

[S’applique uniquement à UMDF]

La méthode WdfDevicePostEvent avertit de manière asynchrone les applications qui attendent l’événement spécifié à partir d’un pilote.

Syntaxe

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

Paramètres

[in] Device

Handle vers un objet d’appareil framework.

[in] EventGuid

GUID de l’événement. Le GUID est déterminé par l’application et le pilote et est opaque pour l’infrastructure.

[in] WdfEventType

Valeur WDF_EVENT_TYPE-typée qui identifie le type d’événement. Dans la version actuelle de UMDF, le pilote doit définir EventType sur WdfEventBroadcast (1). WdfEventBroadcast indique que l’événement est diffusé. Les applications peuvent s’abonner à WdfEventBroadcast-type d’événements. Pour recevoir des événements de diffusion, l’application doit s’inscrire à la notification via la fonction Microsoft Win32 RegisterDeviceNotification. les événements WdfEventBroadcast-type sont exposés en tant qu’événements de type DBT_CUSTOMEVENT aux applications.

[in] Data

Pointeur vers une mémoire tampon qui contient des données associées à l’événement. NULL est une valeur valide.

[in] DataSizeCb

Taille, en octets, des données qui Données pointe vers. Zéro est une valeur de taille valide si Data est définie sur NULL.

Valeur de retour

Si l’opération réussit, WdfDevicePostEvent retourne STATUS_SUCCESS. Les valeurs de retour supplémentaires sont les suivantes :

Retourner le code Description
STATUS_INVALID_PARAMETER
WdfEventType n’est pas défini sur WdfEventBroadcast .
 

La méthode peut retourner d’autres valeurs NTSTATUS .

Remarques

Lorsque le pilote appelle WdfDevicePostEvent pour avertir l’application demandée d’un événement, UMDF envoie l’événement au système d’exploitation. Le système d’exploitation envoie l’événement à l’application demandée dans une opération asynchrone. Si le système d’exploitation ne retourne initialement aucune erreur, WdfDevicePostEvent retourne STATUS_SUCCESS.

Toutefois, plus tard, si le système d’exploitation reçoit une erreur pendant qu’il tente de remettre l’événement (éventuellement en raison d’une condition de mémoire faible), le système d’exploitation ne peut pas informer le pilote de l’erreur. En raison de la nature asynchrone de cette notification d’événement, la remise de l’événement à l’application demandée n’est pas garantie.

Si les informations sur l’événement sont perdues jusqu’à la demande d’application, l’application doit être en mesure de récupérer à partir de l’événement perdu.

Exigences

Exigence Valeur
client minimum pris en charge Windows 8.1
plateforme cible Universel
version minimale de UMDF 2.0
d’en-tête wdfdevice.h (include Wdf.h)
bibliothèque WUDFx02000.lib
DLL WUDFx02000.dll
IRQL PASSIVE_LEVEL

Voir aussi

IWDFDevice ::P ostEvent

WDF_EVENT_TYPE