Condividi tramite


funzione WinUsb_QueryPipeEx (winusb.h)

La funzione WinUsb_QueryPipeEx recupera informazioni estese sull'endpoint specificato e sulla pipe associata per un'interfaccia.

Sintassi

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

Parametri

[in] InterfaceHandle

Handle opaco per un'interfaccia che contiene l'endpoint a cui è associata la pipe.

Per eseguire una query sulla pipe associata a un endpoint nella prima interfaccia, usare l'handle restituito da WinUsb_Initialize. Per tutte le altre interfacce, usare l'handle per l'interfaccia di destinazione, recuperata da WinUsb_GetAssociatedInterface.

[in] AlternateSettingNumber

Valore che specifica l'interfaccia alternativa per cui restituire le informazioni.

[in] PipeIndex

Valore che specifica la pipe per restituire informazioni. Questo valore non corrisponde al campo bEndpointAddress nel descrittore dell'endpoint. Un valore PipeIndex pari a 0 indica il primo endpoint associato all'interfaccia, un valore pari a 1 indica il secondo endpoint e così via. PipeIndex deve essere minore del valore nel campo bNumEndpoints del descrittore di interfaccia.

[out] PipeInformationEx

Puntatore, nell'output, a una struttura WINUSB_PIPE_INFORMATION_EX allocata dal chiamante che contiene informazioni sulla pipe.

Valore restituito

WinUsb_QueryPipeEx restituisce TRUE se l'operazione ha esito positivo. In caso contrario, questa funzione restituisce FALSE e il chiamante può recuperare l'errore registrato chiamando GetLastError.

GetLastError può restituire il codice di errore seguente.

Codice restituito Descrizione
ERROR_INVALID_HANDLE
Il chiamante ha passato NULL nel parametro InterfaceHandle .
ERROR_INVALID_PARAMETER
Il chiamante ha passato NULL nel parametro PipeInformation ; Impossibile trovare il descrittore di interfaccia per l'handle specificato in InterfaceHandle.
ERROR_NO_MORE_ITEMS
Il valore passato nel parametro PipeIndex è maggiore del valore bNumEndpoints del descrittore di interfaccia; Impossibile trovare il descrittore dell'endpoint per l'interfaccia specificata.

Commenti

La funzione WinUsb_QueryPipeEx non recupera informazioni sulla pipe del controllo.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione winusb.h (include Winusb.h)
Libreria Winusb.lib
DLL Winusb.dll

Vedi anche

Inviare trasferimenti isocroni USB da un'app desktop WinUSB

WINUSB_PIPE_INFORMATION

WinUSB

Funzioni WinUSB

WinUsb_Initialize