função WinUsb_QueryPipeEx (winusb.h)

A função WinUsb_QueryPipeEx recupera informações estendidas sobre o ponto de extremidade especificado e o pipe associado para uma interface.

Sintaxe

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

Parâmetros

[in] InterfaceHandle

Um identificador opaco para uma interface que contém o ponto de extremidade ao qual o pipe está associado.

Para consultar o pipe associado a um ponto de extremidade na primeira interface, use o identificador retornado por WinUsb_Initialize. Para todas as outras interfaces, use o identificador para a interface de destino, recuperada por WinUsb_GetAssociatedInterface.

[in] AlternateSettingNumber

Um valor que especifica a interface alternativa para a qual retornar as informações.

[in] PipeIndex

Um valor que especifica o pipe sobre o qual retornar informações. Esse valor não é o mesmo que o campo bEndpointAddress no descritor de ponto de extremidade. Um valor PipeIndex de 0 significa o primeiro ponto de extremidade associado à interface, um valor de 1 significa o segundo ponto de extremidade e assim por diante. PipeIndex deve ser menor que o valor no campo bNumEndpoints do descritor de interface.

[out] PipeInformationEx

Um ponteiro, na saída, para uma estrutura de WINUSB_PIPE_INFORMATION_EX alocada pelo chamador que contém informações de pipe.

Retornar valor

WinUsb_QueryPipeExretornará TRUE se a operação for bem-sucedida. Caso contrário, essa função retornará FALSE e o chamador poderá recuperar o erro registrado chamando GetLastError.

GetLastError pode retornar o código de erro a seguir.

Código de retorno Descrição
ERROR_INVALID_HANDLE
O chamador passou NULL no parâmetro InterfaceHandle .
ERROR_INVALID_PARAMETER
O chamador passou NULL no parâmetro PipeInformation ; Não foi possível encontrar o descritor de interface para o identificador especificado em InterfaceHandle.
ERROR_NO_MORE_ITEMS
O valor passado no parâmetro PipeIndex é maior que o valor bNumEndpoints do descritor de interface; Não foi possível encontrar o descritor de ponto de extremidade para a interface especificada.

Comentários

A função WinUsb_QueryPipeEx não recupera informações sobre o pipe de controle.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho winusb.h (inclua Winusb.h)
Biblioteca Winusb.lib
DLL Winusb.dll

Confira também

Enviar transferências isocronas USB de um aplicativo da área de trabalho do WinUSB

WINUSB_PIPE_INFORMATION

WinUSB

Funções do WinUSB

WinUsb_Initialize