Share via


função WinUsb_SetPipePolicy (winusb.h)

A função WinUsb_SetPipePolicy define a política para um pipe específico associado a um ponto de extremidade no dispositivo. Essa é uma operação síncrona.

Sintaxe

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

Parâmetros

[in] InterfaceHandle

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

Para definir a política para o pipe associado ao 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] PipeID

Um valor de 8 bits que consiste em um endereço de 7 bits e um bit de direção. Esse parâmetro corresponde ao campo bEndpointAddress no descritor de ponto de extremidade.

[in] PolicyType

Uma variável ULONG que especifica o parâmetro de política a ser alterado. O parâmetro Value contém o novo valor para o parâmetro de política, definido em winusbio.h. Para obter informações sobre como usar cada uma das políticas de pipe e o comportamento resultante, consulte Funções do WinUSB para modificação da política de pipe.

[in] ValueLength

O tamanho, em bytes, do buffer em Value.

[in] Value

O novo valor para o parâmetro de política especificado por PolicyType . O tamanho desse parâmetro de entrada depende da política a ser alterada. Para obter informações sobre o tamanho desse parâmetro, consulte a descrição do parâmetro PolicyType .

Valor retornado

WinUsb_SetPipePolicyretornará 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 um tamanho inválido para o buffer de parâmetro de política no parâmetro ValueLength .
ERROR_NOT_ENOUGH_MEMORY
Indica que não há memória suficiente para executar a operação.

Requisitos

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

Confira também

WinUSB

Funções do WinUSB

Funções do WinUSB para modificação da política de pipe

WinUsb_GetPipePolicy

WinUsb_Initialize