TARGET_DEVICE_CUSTOM_NOTIFICATION structure (wdm.h)
La structure TARGET_DEVICE_CUSTOM_NOTIFICATION décrit un événement d’appareil personnalisé.
Syntaxe
typedef struct _TARGET_DEVICE_CUSTOM_NOTIFICATION {
USHORT Version;
USHORT Size;
GUID Event;
PFILE_OBJECT FileObject;
LONG NameBufferOffset;
UCHAR CustomDataBuffer[1];
} TARGET_DEVICE_CUSTOM_NOTIFICATION, *PTARGET_DEVICE_CUSTOM_NOTIFICATION;
Membres
Version
Spécifie la version de la structure de données, actuellement 1.
Size
Spécifie la taille de la structure, en octets, y compris les trois premiers membres standard plus les données spécifiques à l’événement.
Event
Spécifie un GUID identifiant l’événement. Les GUID pour la notification d’événement personnalisé sont définis par les composants qui utilisent ce mécanisme.
FileObject
Pointeur vers un objet fichier pour l’appareil.
NameBufferOffset
Spécifie le décalage, en octets, du début de CustomDataBuffer où commence le texte. La valeur -1 indique qu’il n’y a pas de texte.
CustomDataBuffer[1]
Mémoire tampon de longueur variable, contenant éventuellement des données binaires au début de la mémoire tampon, suivie d’une mémoire tampon de texte facultative (alignée sur les mots).
Remarques
Les composants en mode noyau utilisent cette structure pour la notification d’événement personnalisée : pour signaler un événement personnalisé (IoReportTargetDeviceChange[Asynchrone]) et lors de la gestion d’un événement personnalisé (dans une routine de rappel de notification).
Cette structure comprend à la fois une mémoire tampon de données binaires de longueur variable et une mémoire tampon de texte Unicode de longueur variable. NameBufferOffset doit indiquer où commence la mémoire tampon de texte, afin que les données puissent être remises dans le format approprié (ANSI ou Unicode) aux applications en mode utilisateur qui se sont inscrites pour la notification basée sur le handle auprès de RegisterDeviceNotification. Voir aussi RegisterDeviceNotification.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Voir aussi
IoRegisterPlugPlayNotification