WinUsb_GetPowerPolicy関数 (winusb.h)

WinUsb_GetPowerPolicy関数は、デバイスの電源ポリシーを取得します。 これは同期操作です。

構文

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

パラメーター

[in] InterfaceHandle

WinUsb_Initialize によって返される、デバイス上の最初のインターフェイスへの不透明なハンドル。

[in] PolicyType

Value で取得する電源ポリシー パラメーターを指定する 。 次の表では、 Winusbio.h で定義されているシンボリック定数について説明します。

ポリシーの種類 説明
AUTO_SUSPEND

(0x81)

呼び出し元がAUTO_SUSPENDの電源ポリシーを指定した場合、 WinUsb_GetPowerPolicyValue パラメーターの自動中断ポリシー パラメーターの値を返します。

ValueTRUE (つまり、0 以外) の場合、転送が保留中でない場合、または保留中の転送が割り込みエンドポイントまたは一括エンドポイントでの IN 転送のみである場合、USB スタックはデバイスを中断します。

DefaultIdleState レジストリ値の値によって、自動中断ポリシー パラメーターの既定値が決まります。

Value パラメーターは UCHAR 変数を指している必要があります。

SUSPEND_DELAY

(0x83)

呼び出し元がSUSPEND_DELAYの電源ポリシーを指定した場合、 WinUsb_GetPowerPolicyValue の中断遅延ポリシー パラメーターの値を返します。

中断遅延ポリシー パラメーターは、WinUSB ドライバーがデバイスを中断する前に転送後に待機する必要がある最小時間 (ミリ秒単位) を指定します。

は ULONG 変数を指す必要があります。

[in, out] ValueLength

Value というバッファーのサイズへのポインター。 出力時に、 ValueLengthValue バッファーにコピーされたデータのサイズを受け取ります。

[out] Value

指定した電源ポリシー パラメーターを受け取るバッファー。 詳細については、「 PolicyType」を参照してください。

戻り値

WinUsb_GetPowerPolicy は、操作が成功した場合に TRUE を 返します。 それ以外の場合、このルーチンは FALSE を返し、呼び出し元は GetLastError を呼び出すことによってログに記録されたエラーを取得できます。

GetLastError は 、次のエラー コードを返すことができます。

リターン コード 説明
ERROR_INVALID_HANDLE
呼び出し元が InterfaceHandle パラメーターに NULL を渡しました。

要件

要件
対象プラットフォーム ユニバーサル
Header winusb.h (Winusb.h を含む)
Library Winusb.lib
[DLL] Winusb.dll

こちらもご覧ください

WinUSB

WinUSB 関数

WinUSB 電源管理

WinUsb_Initialize