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 |
---|---|
|
L’appelant a passé la valeur NULL dans le paramètre InterfaceHandle . |
|
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. |
|
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