Partager via


WinUsb_SetPipePolicy, fonction (winusb.h)

La fonction WinUsb_SetPipePolicy définit la stratégie d’un canal spécifique associé à un point de terminaison sur l’appareil. Il s’agit d’une opération synchrone.

Syntaxe

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

Paramètres

[in] InterfaceHandle

Handle opaque pour une interface qui contient le point de terminaison auquel le canal est associé.

Pour définir la stratégie du canal associé au point de terminaison dans la première interface, utilisez le handle retourné par WinUsb_Initialize. Pour toutes les autres interfaces, utilisez le handle de l’interface cible, récupéré par WinUsb_GetAssociatedInterface.

[in] PipeID

Valeur 8 bits qui se compose d’une adresse 7 bits et d’un bit de direction. Ce paramètre correspond au champ bEndpointAddress dans le descripteur de point de terminaison.

[in] PolicyType

Variable ULONG qui spécifie le paramètre de stratégie à modifier. Le paramètre Value contient la nouvelle valeur du paramètre de stratégie, défini dans winusbio.h. Pour plus d’informations sur l’utilisation de chacune des stratégies de canal et le comportement résultant, consultez WinUSB Functions for Pipe Policy Modification.

[in] ValueLength

Taille, en octets, de la mémoire tampon à Valeur.

[in] Value

Nouvelle valeur pour le paramètre de stratégie spécifié par PolicyType . La taille de ce paramètre d’entrée dépend de la stratégie à modifier. Pour plus d’informations sur la taille de ce paramètre, consultez la description du paramètre PolicyType .

Valeur retournée

WinUsb_SetPipePolicy retourne TRUE si l’opération réussit. Sinon, cette fonction retourne FALSE et l’appelant peut récupérer l’erreur journalisée en appelant GetLastError.

GetLastError peut retourner le code d’erreur suivant.

Code de retour Description
ERROR_INVALID_HANDLE
L’appelant a passé la valeur NULL dans le paramètre InterfaceHandle .
ERROR_INVALID_PARAMETER
L’appelant a passé une taille non valide pour la mémoire tampon des paramètres de stratégie dans le paramètre ValueLength .
ERROR_NOT_ENOUGH_MEMORY
Indique que la mémoire est insuffisante pour effectuer l’opération.

Configuration requise

   
Plateforme cible Universal
En-tête winusb.h (inclure Winusb.h)
Bibliothèque Winusb.lib
DLL Winusb.dll

Voir aussi

WinUSB

Fonctions WinUSB

WinUSB Functions for Pipe Policy Modification

WinUsb_GetPipePolicy

WinUsb_Initialize