IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS IOCTL (usbioctl.h)
Le pilote client envoie cette requête pour récupérer les caractéristiques de transport.
Code principal
Mémoire tampon d’entrée/sortie
Le membre AssociatedIrp.SystemBuffer est un pointeur vers une structure USB_TRANSPORT_CHARACTERISTICS allouée par l’appelant. Lors de l’entrée, définissez version sur USB_TRANSPORT_CHARACTERISTICS_VERSION_1. Lors de la sortie version est réinitialisée à une version inférieure ou égale à USB_TRANSPORT_CHARACTERISTICS_VERSION_1 ; il reste des membres de la structure est rempli d’informations de transport.
Longueur de la mémoire tampon d’entrée/sortie
Taille de la structure USB_TRANSPORT_CHARACTERISTICS.
Bloc d’état
> IoStatus.Status est défini sur STATUS_SUCCESS si la requête réussit. Sinon, état à la condition d’erreur appropriée en tant que code NTSTATUS.
Remarques
Cette requête récupère les caractéristiques de transport pour décider d’un algorithme de diffusion en continu. Par exemple, un pilote d’affichage peut utiliser les informations de latence et de bande passante pour décider de sa sélection de codec.
Ces informations peuvent ne pas toujours être disponibles. La pile de pilotes USB dépend du transport sous-jacent pour exposer ces valeurs. Par conséquent, le pilote client doit disposer d’un mécanisme de sauvegarde pour ces cas où la demande.
Si le pilote client souhaite connaître les dernières informations à tout moment, le pilote doit s’inscrire à la notification lorsque les caractéristiques de transport changent, conserver une demande en attente avec la pile de pilotes USB et annuler l’inscription lorsque la notification n’est plus nécessaire. Le pilote peut accomplir toutes ces tâches en envoyant ces demandes IOCTL.
- IOCTL_USB_REGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE
- IOCTL_USB_NOTIFY_ON_TRANSPORT_CHARACTERISTICS_CHANGE
- IOCTL_USB_UNREGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 10, version 1709 |
serveur minimum pris en charge | Windows Server 2016 |
d’en-tête | usbioctl.h |
IRQL | <=DISPATCH_LEVEL |
Voir aussi
création de requêtes IOCTL dans les pilotes
pilotes clients USB pour Media-Agnostic (MA-USB)
WdfIoTargetSendInternalIoctlOthersSynchronously