IWDFDevice2::GetSystemPowerAction 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 没有将新功能添加到 UMDF 1,并且对较新版本的 Windows 10 上的 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅 UMDF入门 。]
GetSystemPowerAction 方法返回计算机当前发生的 系统电源作(如果有)。
语法
POWER_ACTION GetSystemPowerAction();
返回值
GetSystemPowerAction 返回 POWER_ACTION类型化枚举器值。 该值指示计算机当前发生的 系统电源作。 有关详细信息,请参阅以下“备注”部分。
言论
GetSystemPowerAction 方法使驱动程序能够确定设备电源转换是由于设备处于空闲状态(还是唤醒),还是因为整个计算机进入(或离开)处于低功率状态而发生。
驱动程序必须仅从框架 进入低功率状态 或 返回到其工作状态时调用的事件回调函数 GetSystemPowerAction。
GetSystemPowerAction 返回的值取决于以下情况:
- 如果在驱动程序调用 GetSystemPowerAction时计算机进入低功率状态,该方法将返回计算机进入低功率状态的原因。 例如,如果计算机正在进入其 S1、S2 或 S3 低功率状态,该方法将返回 PowerActionSleep。
- 如果当驱动程序调用 GetSystemPowerAction时,计算机从低功率状态(S0)状态返回其工作状态,该方法将返回计算机进入低功率状态的原因。 例如,如果计算机离开其 S1、S2 或 S3 低功率状态,该方法将返回 PowerActionSleep。
- 如果计算机在调用 GetSystemPowerAction 时(在关闭后)启动(关闭后),该方法将返回 PowerActionNone。
- 如果当驱动程序调用 getSystemPowerAction时,设备进入低功率空闲状态或返回到其工作状态(D0),而系统的其余部分仍处于工作状态(S0)状态,该方法将返回 PowerActionNone。
- 如果驱动程序调用 getSystemPowerAction时计算机和设备都处于其工作状态,该方法将返回 PowerActionNone。
例子
下面的代码示例获取 IWDFDevice2 接口,然后调用 GetSystemPowerAction。
IWDFDevice2 *pDevice2 = NULL;
HRESULT hrQI = pDevice->QueryInterface(IID_PPV_ARGS(&pDevice2));
if (SUCCEEDED(hrQI))
{
POWER_ACTION powerAction = pDevice2->GetSystemPowerAction();
}
...
SAFE_RELEASE(pDevice2);
要求
要求 | 价值 |
---|---|
终止支持 | 在 UMDF 2.0 及更高版本中不可用。 |
目标平台 | 桌面 |
最低 UMDF 版本 | 1.9 |
标头 | wudfddi.h (包括 Wudfddi.h) |
DLL | WUDFx.dll |