structure _URB_CONTROL_GET_STATUS_REQUEST (usb.h)
La structure _URB_CONTROL_GET_STATUS_REQUEST est utilisée par les pilotes clients USB pour récupérer des status à partir d’un appareil, d’une interface, d’un point de terminaison ou d’une autre cible définie par l’appareil.
Syntaxe
struct _URB_CONTROL_GET_STATUS_REQUEST {
struct _URB_HEADER Hdr;
PVOID Reserved;
ULONG Reserved0;
ULONG TransferBufferLength;
PVOID TransferBuffer;
PMDL TransferBufferMDL;
struct _URB *UrbLink;
struct _URB_HCD_AREA hca;
UCHAR Reserved1[4];
USHORT Index;
USHORT Reserved2;
};
Membres
Hdr
Pointeur vers une structure de _URB_HEADER qui spécifie les informations d’en-tête URB. Hdr.Length doit être sizeof(_URB_CONTROL_GET_STATUS_REQUEST)
et Hdr.Function doit être l’une des valeurs suivantes :
- URB_FUNCTION_GET_STATUS_FROM_DEVICE
- URB_FUNCTION_GET_STATUS_FROM_INTERFACE
- URB_FUNCTION_GET_STATUS_FROM_ENDPOINT
- URB_FUNCTION_GET_STATUS_FROM_OTHER
Reserved
Réservé. Ne pas utiliser.
Reserved0
Réservé. Ne pas utiliser.
TransferBufferLength
Doit être 2. Ce membre spécifie la longueur, en octets, de la mémoire tampon spécifiée dans TransferBuffer ou décrite dans TransferBufferMDL. Le pilote du contrôleur hôte retourne le nombre d’octets envoyés ou lus à partir du canal dans ce membre.
TransferBuffer
Pointeur vers une mémoire tampon résidente pour le transfert ou est NULL si un MDL est fourni dans TransferBufferMDL. Le pilote de bus retourne un seul octet spécifiant le status pour la cible.
TransferBufferMDL
Pointeur vers un MDL qui décrit une mémoire tampon résidente ou a la valeur NULL si une mémoire tampon est fournie dans TransferBuffer. Le pilote de bus retourne un seul octet spécifiant le status pour la cible. Cette MDL doit être allouée à partir d’un pool non paginé.
UrbLink
Réservé. Ne pas utiliser.
hca
Réservé. Ne pas utiliser.
Reserved1[4]
Réservé. Ne pas utiliser.
Index
Spécifie l’index défini par l’appareil, retourné par une demande de configuration réussie, si la demande concerne un point de terminaison ou une interface. Sinon, Index doit être égal à zéro.
Reserved2
Réservé. Ne pas utiliser.
Remarques
Les pilotes peuvent utiliser la routine de service UsbBuildGetStatusRequest pour mettre en forme cet URB.
Les membres réservés de cette structure doivent être traités comme opaques et sont réservés à l’utilisation du système.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | usb.h (inclure Usb.h) |