Compartir a través de


función WinUsb_QueryPipeEx (winusb.h)

La función WinUsb_QueryPipeEx recupera información extendida sobre el punto de conexión especificado y la canalización asociada para una interfaz.

Sintaxis

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

Parámetros

[in] InterfaceHandle

Identificador opaco de una interfaz que contiene el punto de conexión con el que está asociada la canalización.

Para consultar la canalización asociada a un punto de conexión en la primera interfaz, use el identificador devuelto por WinUsb_Initialize. Para todas las demás interfaces, use el identificador para la interfaz de destino, recuperada por WinUsb_GetAssociatedInterface.

[in] AlternateSettingNumber

Valor que especifica la interfaz alternativa para la que se va a devolver la información.

[in] PipeIndex

Valor que especifica la canalización sobre la que se va a devolver información. Este valor no es el mismo que el campo bEndpointAddress en el descriptor de punto de conexión. Un valor PipeIndex de 0 significa el primer punto de conexión asociado a la interfaz, un valor de 1 significa el segundo punto de conexión, etc. PipeIndex debe ser menor que el valor del campo bNumEndpoints del descriptor de interfaz.

[out] PipeInformationEx

Puntero, en la salida, a una estructura de WINUSB_PIPE_INFORMATION_EX asignada por el autor de la llamada que contiene información de canalización.

Valor devuelto

WinUsb_QueryPipeEx devuelve TRUE si la operación se realiza correctamente. De lo contrario, esta función devuelve FALSE y el autor de la llamada puede recuperar el error registrado llamando a GetLastError.

GetLastError puede devolver el siguiente código de error.

Código devuelto Descripción
ERROR_INVALID_HANDLE
El llamador pasó NULL en el parámetro InterfaceHandle .
ERROR_INVALID_PARAMETER
El llamador pasó NULL en el parámetro PipeInformation ; No se encontró el descriptor de interfaz para el identificador especificado en InterfaceHandle.
ERROR_NO_MORE_ITEMS
El valor pasado en el parámetro PipeIndex es mayor que el valor bNumEndpoints del descriptor de interfaz; No se encontró el descriptor de punto de conexión para la interfaz especificada.

Comentarios

La función WinUsb_QueryPipeEx no recupera información sobre la canalización de control.

Requisitos

Requisito Value
Plataforma de destino Universal
Encabezado winusb.h (incluya Winusb.h)
Library Winusb.lib
Archivo DLL Winusb.dll

Consulte también

Envío de transferencias isócrónicas USB desde una aplicación de escritorio winUSB

WINUSB_PIPE_INFORMATION

WinUSB

Funciones winUSB

WinUsb_Initialize