Share via


fonction WinUsb_GetPowerPolicy (winusb.h)

La fonction WinUsb_GetPowerPolicy récupère la stratégie d’alimentation d’un appareil. Il s’agit d’une opération synchrone.

Syntaxe

BOOL WinUsb_GetPowerPolicy(
  [in]      WINUSB_INTERFACE_HANDLE InterfaceHandle,
  [in]      ULONG                   PolicyType,
  [in, out] PULONG                  ValueLength,
  [out]     PVOID                   Value
);

Paramètres

[in] InterfaceHandle

Poignée opaque à la première interface de l’appareil, qui est retournée par WinUsb_Initialize.

[in] PolicyType

Valeur qui spécifie le paramètre power policy à récupérer dans Valeur. Le tableau suivant décrit les constantes symboliques définies dans Winusbio.h.

Type de stratégie Description
AUTO_SUSPEND

(0x81)

Si l’appelant spécifie une stratégie d’alimentation de AUTO_SUSPEND, WinUsb_GetPowerPolicy retourne la valeur du paramètre de stratégie de suspension automatique dans le paramètre Value .

Si La valeur est TRUE (autrement dit, non nulle), la pile USB suspend l’appareil lorsqu’aucun transfert n’est en attente ou que les seuls transferts en attente sont des transferts IN sur un point de terminaison d’interruption ou en bloc.

La valeur de la valeur de Registre DefaultIdleState détermine la valeur par défaut du paramètre de stratégie de suspension automatique.

Le paramètre Value doit pointer vers une variable UCHAR.

SUSPEND_DELAY

(0x83)

Si l’appelant spécifie une stratégie d’alimentation de SUSPEND_DELAY, WinUsb_GetPowerPolicy retourne la valeur du paramètre de stratégie suspend delay dans Valeur.

Le paramètre de stratégie suspend delay spécifie la durée minimale, en millisecondes, pendant laquelle le pilote WinUSB doit attendre après tout transfert avant de pouvoir suspendre l’appareil.

La valeur doit pointer vers une variable ULONG.

[in, out] ValueLength

Pointeur vers la taille de la mémoire tampon valeur. Lors de la sortie, ValueLength reçoit la taille des données qui ont été copiées dans la mémoire tampon Value .

[out] Value

Mémoire tampon qui reçoit le paramètre de stratégie d’alimentation spécifié. Pour plus d’informations, consultez PolicyType.

Valeur retournée

WinUsb_GetPowerPolicy retourne TRUE si l’opération réussit. Sinon, cette routine 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 .

Configuration requise

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

Voir aussi

WinUSB

Fonctions WinUSB

Gestion de l’alimentation WinUSB

WinUsb_Initialize