WdfUsbInterfaceGetConfiguredPipe, fonction (wdfusb.h)
[S’applique à KMDF et UMDF]
La méthode WdfUsbInterfaceGetConfiguredPipe retourne un handle à l’objet de canal d’infrastructure associé à une interface d’appareil USB et à un index de canal spécifiés. Si vous le souhaitez, la méthode retourne également des informations sur le canal.
Syntaxe
WDFUSBPIPE WdfUsbInterfaceGetConfiguredPipe(
[in] WDFUSBINTERFACE UsbInterface,
[in] UCHAR PipeIndex,
[in, out, optional] PWDF_USB_PIPE_INFORMATION PipeInfo
);
Paramètres
[in] UsbInterface
Handle vers un objet d’interface USB obtenu en appelant WdfUsbTargetDeviceGetInterface.
[in] PipeIndex
Index de base zéro dans l’ensemble d’objets de canal d’infrastructure associés à l’objet d’interface spécifié.
[in, out, optional] PipeInfo
Pointeur vers une structure WDF_USB_PIPE_INFORMATION allouée par l’appelant que l’infrastructure remplit. Ce paramètre est facultatif et peut être NULL.
Valeur de retour
Si l’opération réussit, WdfUsbInterfaceGetConfiguredPipe retourne un handle à l’objet de canal d’infrastructure associé à l’objet d’interface et à l’index de canal spécifiés. La méthode retourne NULL si la taille de la structure WDF_USB_PIPE_INFORMATION est incorrecte ou si la valeur d’index du canal est trop grande.
Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.
Remarques
Votre pilote peut appeler WdfUsbInterfaceGetConfiguredPipe une fois qu’il a appelé WdfUsbTargetDeviceSelectConfig.
Pour plus d’informations sur la méthode WdfUsbInterfaceGetConfiguredPipe et les cibles d’E/S USB, consultez cibles d’E/S USB.
Exemples
L’exemple de code suivant envoie une demande d’abandon USB à chaque canal configuré d’une interface USB spécifiée.
BYTE count, i;
NTSTATUS status;
count = WdfUsbInterfaceGetNumConfiguredPipes(UsbInterface);
for (i = 0; i < count; i++) {
WDFUSBPIPE pipe;
pipe = WdfUsbInterfaceGetConfiguredPipe(
UsbInterface,
i,
NULL
);
status = WdfUsbTargetPipeAbortSynchronously(
pipe,
WDF_NO_HANDLE,
NULL
);
if (!NT_SUCCESS(status)) {
break;
}
}
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Universel |
version minimale de KMDF | 1.0 |
version minimale de UMDF | 2.0 |
d’en-tête | wdfusb.h (include Wdfusb.h) |
bibliothèque | Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
règles de conformité DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf) |
Voir aussi
WdfUsbInterfaceGetNumConfiguredPipes