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
有关低功率状态的详细信息,请参阅 设备进入 Low-Power 状态

例子

下面的代码示例获取 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

另请参阅

IWDFDevice2