Partager via


IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME IOCTL (usbioctl.h)

La demande de contrôle d’E /S IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME récupère le nom de clé de registre des pilotes associé au périphérique connecté au port indiqué.

IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME est une demande de contrôle d’E/S en mode utilisateur. Cette requête cible le périphérique hub USB (GUID_DEVINTERFACE_USB_HUB).

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d'entrée

Le membre AssociatedIrp.SystemBuffer pointe vers une structure de USB_NODE_CONNECTION_DRIVERKEY_NAME allouée par l’utilisateur . En entrée, le membre ConnectionIndex de cette structure contient le numéro du port auquel l’appareil est connecté.

Longueur de la mémoire tampon d’entrée

Taille d’une structure USB_NODE_CONNECTION_DRIVERKEY_NAME .

Mémoire tampon de sortie

En sortie, le membre DriverKeyName de la structure USB_NODE_CONNECTION_DRIVERKEY_NAME dans AssociatedIrp.SystemBuffer contient le nom de clé de pilote associé à l’appareil connecté au port indiqué par ConnectionIndex.

Le membre ActualLength indique la longueur, en octets, du nom de clé du pilote. Le membre Parameters.DeviceIoControl.OutputBufferLength indique la taille, en octets, de l’ensemble de la structure USB_NODE_CONNECTION_DRIVERKEY_NAME .

Longueur de la mémoire tampon de sortie

Taille d’une structure USB_NODE_CONNECTION_DRIVERKEY_NAME .

Bloc d’état

La pile USB définit Irp-IoStatus.Status> sur STATUS_SUCCESS si la demande réussit. Sinon, la pile USB définit Status sur la condition d’erreur appropriée, telle que STATUS_INVALID_PARAMETER ou STATUS_INSUFFICIENT_RESOURCES.

Si l’appelant alloue une mémoire tampon de sortie suffisamment grande pour contenir toutes les données de sortie, IoStatus.Information sera égal à la valeur de ActualLength. Si la mémoire tampon de sortie est suffisamment grande pour contenir toutes les données de sortie, IoStatus.Information est égal à sizeof(USB_NODE_CONNECTION_DRIVERKEY_NAME).

Configuration requise

Condition requise Valeur
En-tête usbioctl.h (inclure Usbioctl.h)

Voir aussi

USB_NODE_CONNECTION_DRIVERKEY_NAME