Share via


Informations de référence sur le pilote USB

Vue d’ensemble de la technologie de référence du pilote USB.

Pour développer des informations de référence sur les pilotes USB, vous avez besoin des en-têtes suivants :

Pour obtenir des conseils de programmation pour cette technologie, consultez :

IOCTLs

 
IOCTL_GENERICUSBFN_ACTIVATE_USB_BUS

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour informer GenericUSBFn.sys d’activer le bus série universel (USB). Une fois activé, le bus est prêt à traiter les événements de bus et à gérer le trafic.
IOCTL_GENERICUSBFN_BUS_EVENT_NOTIFICATION

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour s’inscrire à l’événement USB (Universal Serial Bus).
IOCTL_GENERICUSBFN_CONTROL_STATUS_HANDSHAKE_IN

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour demander un contrôle de longueur nulle status l’établissement d’une négociation sur le point de terminaison 0 dans le sens IN.
IOCTL_GENERICUSBFN_CONTROL_STATUS_HANDSHAKE_OUT

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour effectuer un contrôle de longueur nulle status la négociation sur le point de terminaison 0 dans le sens OUT.
IOCTL_GENERICUSBFN_DEACTIVATE_USB_BUS

Ce code IOCTL est nevtot pris en charge.
IOCTL_GENERICUSBFN_GET_CLASS_INFO

Ce code de contrôle d’E/S (IOCTL) est envoyé par le service ou l’application en mode utilisateur pour récupérer des informations sur les canaux disponibles d’un appareil, tels que configurés dans le Registre.
IOCTL_GENERICUSBFN_GET_CLASS_INFO_EX

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour récupérer des informations sur les canaux disponibles d’un appareil, tels que configurés dans le Registre.
IOCTL_GENERICUSBFN_GET_INTERFACE_DESCRIPTOR_SET

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour obtenir le descripteur d’interface entier défini pour une fonction sur l’appareil. Cette demande IOCTL ne récupère pas le descripteur d’interface défini pour l’ensemble de l’appareil. Descripteur d’interface USB (Universal Serial Bus) défini pour une fonction sur l’appareil.
IOCTL_GENERICUSBFN_GET_PIPE_STATE

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour obtenir l’état du canal USB (Universal Serial Bus) spécifié.
IOCTL_GENERICUSBFN_REGISTER_USB_STRING

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour inscrire un descripteur de chaîne. Descripteur de chaîne USB (Universal Serial Bus).
IOCTL_GENERICUSBFN_SET_PIPE_STATE

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour définir l’état du canal USB (Universal Serial Bus) spécifié.
IOCTL_GENERICUSBFN_TRANSFER_IN

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour émettre un transfert de direction IN sur le point de terminaison qui correspond à l’ID de canal spécifié dans la mémoire tampon d’entrée. (IOCTL_GENERICUSBFN_TRANSFER_IN)
IOCTL_GENERICUSBFN_TRANSFER_IN_APPEND_ZERO_PKT

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour émettre un transfert de direction IN sur le point de terminaison qui correspond à l’ID de canal spécifié dans la mémoire tampon d’entrée. (IOCTL_GENERICUSBFN_TRANSFER_IN_APPEND_ZERO_PKT)
IOCTL_GENERICUSBFN_TRANSFER_OUT

Ce code de contrôle d’E/S (IOCTL) est envoyé par un service ou une application en mode utilisateur pour émettre un transfert de direction OUT sur le point de terminaison qui correspond à l’ID de canal spécifié dans la mémoire tampon d’entrée.
IOCTL_GET_HCD_DRIVERKEY_NAME

La demande de contrôle d’E/S IOCTL_GET_HCD_DRIVERKEY_NAME récupère le nom de clé du pilote dans le Registre pour un pilote de contrôleur hôte USB.
IOCTL_USB_DIAGNOSTIC_MODE_OFF

Le contrôle d’E/S IOCTL_USB_DIAGNOSTIC_MODE_OFF a été déprécié. Ne pas utiliser.
IOCTL_USB_DIAGNOSTIC_MODE_ON

Le contrôle d’E/S IOCTL_USB_DIAGNOSTIC_MODE_ON a été déconseillé. Ne pas utiliser.
IOCTL_USB_GET_ROOT_HUB_NAME

La demande de contrôle d’E/S IOCTL_USB_GET_ROOT_HUB_NAME est utilisée avec la structure USB_ROOT_HUB_NAME pour récupérer le nom de lien symbolique du hub racine. IOCTL_USB_GET_ROOT_HUB_NAME est une demande de contrôle d’E/S en mode utilisateur.
IOCTL_USB_USER_REQUEST

La demande de contrôle d’E/S IOCTL_USB_USER_REQUEST est disponible pour les applications en mode utilisateur et pour les pilotes en mode noyau.

Énumérations

 
USB_USER_ERROR_CODE

L’énumération USB_USER_ERROR_CODE répertorie les codes d’erreur qu’une requête en mode utilisateur USB signale en cas d’échec.
WDMUSB_POWER_STATE

L’énumération WDMUSB_POWER_STATE indique l’état d’alimentation d’un contrôleur hôte ou d’un hub racine.

Fonctions

 
WinUsb_AbortPipe

La fonction WinUsb_AbortPipe annule tous les transferts en attente pour un canal. Il s’agit d’une opération synchrone.
WinUsb_ControlTransfer

La fonction WinUsb_ControlTransfer transmet les données de contrôle sur un point de terminaison de contrôle par défaut.
WinUsb_FlushPipe

La fonction WinUsb_FlushPipe ignore toutes les données mises en cache dans un canal. Il s’agit d’une opération synchrone.
WinUsb_Free

La fonction WinUsb_Free libère toutes les ressources qui WinUsb_Initialize allouées. Il s’agit d’une opération synchrone.
WinUsb_GetAdjustedFrameNumber

La fonction WinUsb_GetAdjustedFrameNumber calcule le numéro d’image USB actuel en fonction de la valeur du numéro d’image et de l’horodatage.
WinUsb_GetAssociatedInterface

La fonction WinUsb_GetAssociatedInterface récupère un handle pour une interface associée. Il s’agit d’une opération synchrone.
WinUsb_GetCurrentAlternateSetting

La fonction WinUsb_GetCurrentAlternateSetting obtient le paramètre d’interface alternatif actuel pour une interface. Il s’agit d’une opération synchrone.
WinUsb_GetCurrentFrameNumber

La fonction WinUsb_GetCurrentFrameNumber obtient le numéro d’image actuel du bus.
WinUsb_GetCurrentFrameNumberAndQpc

La fonction WinUsb_GetCurrentFrameNumberAndQpc récupère la valeur du compteur de performances des requêtes système (QPC) synchronisée avec le frame et le microframe.
WinUsb_GetDescriptor

La fonction WinUsb_GetDescriptor retourne le descripteur demandé. Il s’agit d’une opération synchrone.
WinUsb_GetOverlappedResult

La fonction WinUsb_GetOverlappedResult récupère les résultats d’une opération qui se chevauche sur le fichier spécifié.
WinUsb_GetPipePolicy

La fonction WinUsb_GetPipePolicy récupère la stratégie d’un canal spécifique associé à un point de terminaison sur l’appareil. Il s’agit d’une opération synchrone.
WinUsb_GetPowerPolicy

La fonction WinUsb_GetPowerPolicy récupère la stratégie d’alimentation d’un appareil. Il s’agit d’une opération synchrone.
WinUsb_Initialize

La fonction WinUsb_Initialize crée un handle WinUSB pour l’appareil spécifié par un handle de fichier.
WinUsb_QueryDeviceInformation

La fonction WinUsb_QueryDeviceInformation obtient des informations sur l’appareil physique associé à un handle d’interface WinUSB.
WinUsb_QueryInterfaceSettings

La fonction WinUsb_QueryInterfaceSettings récupère le descripteur d’interface pour les autres paramètres d’interface spécifiés pour un handle d’interface particulier.
WinUsb_QueryPipe

La fonction WinUsb_QueryPipe récupère des informations sur le point de terminaison spécifié et le canal associé pour une interface.
WinUsb_QueryPipeEx

La fonction WinUsb_QueryPipeEx récupère des informations étendues sur le point de terminaison spécifié et le canal associé pour une interface.
WinUsb_ReadIsochPipe

La fonction WinUsb_ReadIsochPipe lit les données d’un point de terminaison OUT isochronisé.
WinUsb_ReadIsochPipeAsap

La fonction WinUsb_ReadIsochPipeAsap envoie une requête qui lit les données d’un point de terminaison OUT isochronisé.
WinUsb_ReadPipe

La fonction WinUsb_ReadPipe lit les données du canal spécifié.
WinUsb_RegisterIsochBuffer

La fonction WinUsb_RegisterIsochBuffer enregistre une mémoire tampon à utiliser pour les transferts isochronieux.
WinUsb_ResetPipe

La fonction WinUsb_ResetPipe réinitialise le bouton bascule de données et efface l’état de décrochage sur un canal.
WinUsb_SetCurrentAlternateSetting

La fonction WinUsb_SetCurrentAlternateSetting définit le paramètre de remplacement d’une interface.
WinUsb_SetPipePolicy

La fonction WinUsb_SetPipePolicy définit la stratégie d’un canal spécifique associé à un point de terminaison sur l’appareil. Il s’agit d’une opération synchrone.
WinUsb_SetPowerPolicy

La fonction WinUsb_SetPowerPolicy définit la stratégie d’alimentation d’un appareil.
WinUsb_StartTrackingForTimeSync

La fonction WinUsb_StartTrackingForTimeSync démarre la fonctionnalité de synchronisation de l’heure dans la pile de pilotes USB qui obtient l’heure QPC du système associée pour les trames de bus USB et les microframes.
WinUsb_StopTrackingForTimeSync

La fonction WinUsb_StopTrackingForTimeSync est supérieure à la fonctionnalité de synchronisation de l’heure dans la pile de pilotes USB qui obtient le temps QPC du système associé pour les trames de bus USB et les microframes.
WinUsb_UnregisterIsochBuffer

La fonction WinUsb_UnregisterIsochBuffer libère toutes les ressources qui WinUsb_RegisterIsochBuffer allouées pour les transferts isochronieux. Il s’agit d’une opération synchrone.
WinUsb_WriteIsochPipe

La fonction WinUsb_WriteIsochPipe écrit le contenu d’une mémoire tampon fournie par l’appelant dans un point de terminaison OUT isochronieux, en commençant par un numéro de trame spécifié.
WinUsb_WriteIsochPipeAsap

Le WinUsb_WriteIsochPipeAsap envoie une demande d’écriture du contenu d’une mémoire tampon sur un point de terminaison OUT isochronieux.
WinUsb_WritePipe

La fonction WinUsb_WritePipe écrit des données dans un canal.

Structures

 
USB_BANDWIDTH_INFO

La structure USB_BANDWIDTH_INFO est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer des informations sur la bande passante allouée.
USB_BUS_STATISTICS_0

La structure USB_BUS_STATISTICS_0 est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer des statistiques de bus.
USB_CLOSE_RAW_DEVICE_PARAMETERS

Cette structure n’est pas prise en charge. La structure USB_CLOSE_RAW_DEVICE_PARAMETERS est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour fermer l’accès brut aux appareils sur le bus.
USB_CONTROLLER_INFO_0

La structure USB_CONTROLLER_INFO_0 est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer des informations sur le contrôleur hôte USB.
USB_DRIVER_VERSION_PARAMETERS

La structure USB_DRIVER_VERSION_PARAMETERS est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer les informations de version.
USB_PASS_THRU_PARAMETERS

La structure USB_PASS_THRU_PARAMETERS est utilisée avec la demande de contrôle E/S IOCTL_USB_USER_REQUEST pour passer une commande spécifique au fournisseur au pilote miniport du contrôleur hôte.
USB_POWER_INFO

La structure USB_POWER_INFO est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer l’état d’alimentation de l’appareil que la stratégie d’alimentation du contrôleur hôte spécifie pour l’état d’alimentation du système indiqué.
USB_UNICODE_NAME

La structure USB_UNICODE_NAME contient une chaîne Unicode qui spécifie un nom de lien symbolique.
USBUSER_BANDWIDTH_INFO_REQUEST

La structure USBUSER_BANDWIDTH_INFO_REQUEST est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer des informations sur la bande passante allouée.
USBUSER_BUS_STATISTICS_0_REQUEST

La structure USBUSER_BUS_STATISTICS_0_REQUEST est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer des statistiques de bus.
USBUSER_CONTROLLER_UNICODE_NAME

La structure USBUSER_CONTROLLER_UNICODE_NAME est utilisée conjointement avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer le nom de clé du pilote du contrôleur hôte USB.
USBUSER_GET_DRIVER_VERSION

La structure USBUSER_GET_DRIVER_VERSION est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour lire les informations de version du pilote et de l’interface.
USBUSER_PASS_THRU_REQUEST

La structure USBUSER_PASS_THRU_REQUEST est utilisée conjointement avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour envoyer une commande spécifique au fournisseur au pilote miniport du contrôleur hôte.
USBUSER_POWER_INFO_REQUEST

La structure USBUSER_POWER_INFO_REQUEST est utilisée conjointement avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour récupérer des informations de stratégie d’alimentation concernant la relation entre un état système spécifique et l’état d’alimentation du contrôleur hôte et du hub racine.
USBUSER_REQUEST_HEADER

La structure USBUSER_REQUEST_HEADER est utilisée avec la demande de contrôle d’E/S IOCTL_USB_USER_REQUEST pour envoyer une demande en mode utilisateur au pilote du contrôleur hôte USB.
WINUSB_PIPE_INFORMATION

La structure WINUSB_PIPE_INFORMATION contient des informations de canal que la routine WinUsb_QueryPipe récupère.
WINUSB_PIPE_INFORMATION_EX

La structure WINUSB_PIPE_INFORMATION_EX contient des informations de canal que la routine WinUsb_QueryPipeEx récupère.
WINUSB_SETUP_PACKET

La structure WINUSB_SETUP_PACKET décrit un paquet d’installation USB.