Partager via


Utilisation des interfaces USB

L’infrastructure représente chaque interface USB en tant qu’objet d’interface USB de framework. Lorsqu’un pilote crée un objet de périphérique USB framework, l’infrastructure crée un objet d’interface USB framework pour chaque interface USB que contient la première configuration USB de l’appareil.

La plupart des périphériques USB n’ont qu’une seule interface, et l’interface n’a qu’un seul autre paramètre. Les pilotes pour ces périphériques n’ont généralement pas besoin d’utiliser les méthodes d’objet que l’objet d’interface USB de l’infrastructure définit.

Si votre pilote prend en charge les périphériques USB qui fournissent plusieurs interfaces ou d’autres paramètres, les méthodes d’objet d’interface permettent au pilote d’effectuer les opérations suivantes :

Obtention d’informations d’interface

Une fois que votre pilote a appelé WdfUsbTargetDeviceCreateWithParameters, il peut appeler WdfUsbTargetDeviceGetInterface pour obtenir un handle vers un objet d’interface USB framework qui représente l’une des interfaces USB de l’appareil. Ensuite, votre pilote peut appeler plusieurs méthodes que l’objet d’interface USB définit pour obtenir des informations sur l’interface USB.

Votre pilote peut appeler les méthodes suivantes à tout moment après avoir appelé WdfUsbTargetDeviceCreateWithParameters :

WdfUsbInterfaceGetInterfaceNumber
Retourne le numéro d’interface USB associé à un objet d’interface USB.

WdfUsbInterfaceGetDescriptor
Récupère ce descripteur d’interface USB associé à l’un des autres paramètres d’une interface USB.

WdfUsbInterfaceGetNumEndpoints
Retourne le nombre de points de terminaison associés à l’un des autres paramètres d’une interface USB.

WdfUsbInterfaceGetEndpointInformation
Récupère des informations sur un point de terminaison et son canal associé.

Votre pilote peut appeler les méthodes suivantes après avoir appelé WdfUsbTargetDeviceSelectConfig :

WdfUsbInterfaceGetConfiguredSettingIndex
Retourne une valeur d’index qui identifie l’autre paramètre actuellement sélectionné pour une interface USB.

WdfUsbInterfaceGetNumConfiguredPipes
Retourne le nombre de canaux configurés pour une interface de périphérique USB spécifiée.

WdfUsbInterfaceGetConfiguredPipe
Retourne un handle à l’objet de canal d’infrastructure associé à une interface de périphérique USB et à un index de canal spécifiés.

Sélection d’un autre paramètre pour une interface USB

Une fois qu’un pilote a appelé WdfUsbTargetDeviceCreateWithParameters, le pilote peut appeler WdfUsbInterfaceGetNumSettings pour obtenir le nombre de paramètres alternatifs pris en charge par une interface USB.

Une fois qu’un pilote a appelé WdfUsbTargetDeviceSelectConfig pour sélectionner une configuration pour un périphérique USB, le pilote peut appeler WdfUsbInterfaceSelectSetting pour sélectionner un autre paramètre pour l’une des interfaces USB de la configuration.

Les autres paramètres de l’appareil doivent être numérotés de façon contiguë, en commençant par zéro.

Pour plus d’informations, consultez Comment sélectionner un autre paramètre dans une interface USB.