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_GetPowerPolicy 在 Value 参数中返回自动挂起策略参数的值。
如果 Value 为 TRUE (即非零) ,则当没有传输挂起或唯一挂起的传输是中断或批量终结点上的 IN 传输时,USB 堆栈会挂起设备。 DefaultIdleState 注册表值的值确定自动挂起策略参数的默认值。 Value 参数必须指向 UCHAR 变量。 |
SUSPEND_DELAY (0x83) |
如果调用方指定SUSPEND_DELAY的电源策略, WinUsb_GetPowerPolicy 在 Value 中返回暂停延迟策略参数 的值。
挂起延迟策略参数指定 WinUSB 驱动程序在任何传输后必须等待的最短时间(以毫秒为单位),然后才能暂停设备。 值 必须指向 ULONG 变量。 |
[in, out] ValueLength
指向 Value 缓冲区大小的指针。 输出时, ValueLength 接收复制到 Value 缓冲区的数据的大小。
[out] Value
接收指定电源策略参数的缓冲区。 有关详细信息,请参阅 PolicyType。
返回值
如果操作成功,WinUsb_GetPowerPolicy返回 TRUE。 否则,此例程返回 FALSE,调用方可以通过调用 GetLastError 检索记录的错误。
GetLastError 可以返回以下错误代码。
返回代码 | 说明 |
---|---|
|
调用方在 InterfaceHandle 参数中传递 NULL。 |
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
标头 | winusb.h (包括 Winusb.h) |
Library | Winusb.lib |
DLL | Winusb.dll |