Fonction WdfUsbTargetPipeWdmGetPipeHandle (wdfusb.h)
[S’applique uniquement à KMDF]
La méthode WdfUsbTargetPipeWdmGetPipeHandle retourne le handle de type USBD_PIPE_HANDLE associé à un objet de canal d’infrastructure spécifié.
Syntaxe
USBD_PIPE_HANDLE WdfUsbTargetPipeWdmGetPipeHandle(
[in] WDFUSBPIPE UsbPipe
);
Paramètres
[in] UsbPipe
Handle d’un objet de canal d’infrastructure obtenu en appelant WdfUsbInterfaceGetConfiguredPipe.
Valeur retournée
WdfUsbTargetPipeWdmGetPipeHandle retourne un handle de type USBD_PIPE_HANDLE.
Un bogue case activée se produit si le pilote fournit un handle d’objet non valide.
Remarques
Un pilote basé sur l’infrastructure doit obtenir un handle de type USBD_PIPE_HANDLE uniquement s’il crée un URB qui nécessite un handle de canal.
Le pilote peut appeler la méthode WdfUsbTargetPipeWdmGetPipeHandle après avoir appelé WdfUsbTargetDeviceSelectConfig. Le handle de type USBD_PIPE_HANDLE que WdfUsbTargetPipeWdmGetPipeHandle retourne est valide jusqu’à ce que le pilote appelle À nouveau WdfUsbTargetDeviceSelectConfig , que le pilote appelle WdfUsbInterfaceSelectSetting ou que l’objet de canal d’infrastructure soit supprimé. Si le pilote fournit une fonction EvtCleanupCallback pour l’objet de canal d’infrastructure, et si l’objet est supprimé avant que le pilote n’appelle à nouveau WdfUsbTargetDeviceSelectConfig ou appelle WdfUsbInterfaceSelectSetting, le handle est valide jusqu’à ce que la fonction EvtCleanupCallback de l’objet soit retournée.
Pour plus d’informations sur la méthode WdfUsbTargetPipeWdmGetPipeHandle et les cibles d’E/S USB, consultez Cibles d’E/S USB.
Exemples
L’exemple de code suivant obtient le handle de type USBD_PIPE_HANDLE pour un canal spécifié.
USBD_PIPE_HANDLE usbdPipeHandle;
usbdPipeHandle = WdfUsbTargetPipeWdmGetPipeHandle(UsbPipe);
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
En-tête | wdfusb.h (inclure Wdfusb.h) |
Bibliothèque | Wdf01000.sys (consultez Gestion de version de la bibliothèque d’infrastructure.) |
IRQL | <=DISPATCH_LEVEL |
Règles de conformité DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf) |