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 |
---|---|
|
L’appelant a passé la valeur NULL dans le paramètre InterfaceHandle . |
|
L’appelant a passé une taille non valide pour la mémoire tampon des paramètres de stratégie dans le paramètre ValueLength . |
|
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 |