Condividi tramite


funzione WinUsb_SetPipePolicy (winusb.h)

La funzione WinUsb_SetPipePolicy imposta i criteri per una pipe specifica associata a un endpoint nel dispositivo. Si tratta di un'operazione sincrona.

Sintassi

BOOL WinUsb_SetPipePolicy(
  [in] WINUSB_INTERFACE_HANDLE InterfaceHandle,
  [in] UCHAR                   PipeID,
  [in] ULONG                   PolicyType,
  [in] ULONG                   ValueLength,
  [in] PVOID                   Value
);

Parametri

[in] InterfaceHandle

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

Per impostare i criteri per la pipe associata all'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] PipeID

Valore a 8 bit costituito da un indirizzo a 7 bit e da un bit di direzione. Questo parametro corrisponde al campo bEndpointAddress nel descrittore dell'endpoint.

[in] PolicyType

Variabile ULONG che specifica il parametro dei criteri da modificare. Il parametro Value contiene il nuovo valore per il parametro policy, definito in winusbio.h. Per informazioni su come usare ogni criterio di pipe e il comportamento risultante, vedere Funzioni WinUSB per la modifica dei criteri di pipe.

[in] ValueLength

Dimensione, in byte, del buffer in Valore.

[in] Value

Nuovo valore per il parametro dei criteri specificato da PolicyType . Le dimensioni di questo parametro di input dipendono dai criteri da modificare. Per informazioni sulle dimensioni di questo parametro, vedere la descrizione del parametro PolicyType .

Valore restituito

WinUsb_SetPipePolicy 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 una dimensione non valida per il buffer dei parametri dei criteri nel parametro ValueLength .
ERROR_NOT_ENOUGH_MEMORY
Indica che la memoria non è sufficiente per eseguire l'operazione.

Requisiti

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

Vedi anche

WinUSB

Funzioni WinUSB

Funzioni WinUSB per la modifica dei criteri pipe

WinUsb_GetPipePolicy

WinUsb_Initialize