función WinUsb_SetPipePolicy (winusb.h)
La función WinUsb_SetPipePolicy establece la directiva para una canalización específica asociada a un punto de conexión en el dispositivo. Se trata de una operación sincrónica.
Sintaxis
BOOL WinUsb_SetPipePolicy(
[in] WINUSB_INTERFACE_HANDLE InterfaceHandle,
[in] UCHAR PipeID,
[in] ULONG PolicyType,
[in] ULONG ValueLength,
[in] PVOID Value
);
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 establecer la directiva de la canalización asociada al 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] PipeID
Valor de 8 bits que consta de una dirección de 7 bits y un bit de dirección. Este parámetro corresponde al campo bEndpointAddress en el descriptor de punto de conexión.
[in] PolicyType
Variable ULONG que especifica el parámetro de directiva que se va a cambiar. El parámetro Value contiene el nuevo valor para el parámetro de directiva, definido en winusbio.h. Para obtener información sobre cómo usar cada una de las directivas de canalización y el comportamiento resultante, consulte Funciones de WinUSB para la modificación de la directiva de canalización.
[in] ValueLength
Tamaño, en bytes, del búfer en Valor.
[in] Value
Nuevo valor para el parámetro de directiva que especifica PolicyType . El tamaño de este parámetro de entrada depende de la directiva que se va a cambiar. Para obtener información sobre el tamaño de este parámetro, vea la descripción del parámetro PolicyType .
Valor devuelto
WinUsb_SetPipePolicy 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 |
---|---|
|
El llamador pasó NULL en el parámetro InterfaceHandle . |
|
El llamador pasó un tamaño no válido para el búfer de parámetros de directiva en el parámetro ValueLength . |
|
Indica que no hay memoria suficiente para realizar la operación. |
Requisitos
Plataforma de destino | Universal |
Encabezado | winusb.h (incluya Winusb.h) |
Library | Winusb.lib |
Archivo DLL | Winusb.dll |
Consulte también
Funciones de WinUSB para la modificación de la directiva de canalización