Partager via


fonction WinUsb_QueryPipeEx (winusb.h)

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

Syntaxe

BOOL WinUsb_QueryPipeEx(
  [in]  WINUSB_INTERFACE_HANDLE     InterfaceHandle,
  [in]  UCHAR                       AlternateSettingNumber,
  [in]  UCHAR                       PipeIndex,
  [out] PWINUSB_PIPE_INFORMATION_EX PipeInformationEx
);

Paramètres

[in] InterfaceHandle

Handle opaque pour une interface qui contient le point de terminaison auquel le canal est associé.

Pour interroger le canal associé à un point de terminaison dans la première interface, utilisez le handle retourné par WinUsb_Initialize. Pour toutes les autres interfaces, utilisez le handle de l’interface cible, récupéré par WinUsb_GetAssociatedInterface.

[in] AlternateSettingNumber

Valeur qui spécifie l’autre interface pour laquelle retourner les informations.

[in] PipeIndex

Valeur qui spécifie le canal sur lequel retourner des informations. Cette valeur n’est pas identique au champ bEndpointAddress dans le descripteur de point de terminaison. Une valeur PipeIndex de 0 signifie le premier point de terminaison associé à l’interface, la valeur 1 signifie le deuxième point de terminaison, et ainsi de suite. PipeIndex doit être inférieur à la valeur dans le champ bNumEndpoints du descripteur d’interface.

[out] PipeInformationEx

Pointeur, en sortie, vers une structure de WINUSB_PIPE_INFORMATION_EX allouée à l’appelant qui contient des informations de canal.

Valeur retournée

WinUsb_QueryPipeEx retourne TRUE si l’opération réussit. Sinon, cette fonction retourne FALSE et l’appelant peut récupérer l’erreur journalisée en appelant GetLastError.

GetLastError peut retourner le code d’erreur suivant.

Code de retour Description
ERROR_INVALID_HANDLE
L’appelant a passé la valeur NULL dans le paramètre InterfaceHandle .
ERROR_INVALID_PARAMETER
L’appelant a passé la valeur NULL dans le paramètre PipeInformation ; Le descripteur d’interface est introuvable pour le handle spécifié dans InterfaceHandle.
ERROR_NO_MORE_ITEMS
La valeur transmise dans le paramètre PipeIndex est supérieure à la valeur bNumEndpoints du descripteur d’interface ; le descripteur de point de terminaison est introuvable pour l’interface spécifiée.

Remarques

La fonction WinUsb_QueryPipeEx ne récupère pas d’informations sur le canal de contrôle.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête winusb.h (inclure Winusb.h)
Bibliothèque Winusb.lib
DLL Winusb.dll

Voir aussi

Envoyer des transferts isochronieux USB à partir d’une application de bureau WinUSB

WINUSB_PIPE_INFORMATION

WinUSB

Fonctions WinUSB

WinUsb_Initialize