Метод IWDFDevice2::GetSystemPowerAction (wudfddi.h)
[Предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. В UMDF 1 новые функции не добавляются, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе начало работы с UMDF.]
Метод GetSystemPowerAction возвращает действие питания системы , если таковое имеется, которое выполняется в данный момент для компьютера.
Синтаксис
POWER_ACTION GetSystemPowerAction();
Возвращаемое значение
GetSystemPowerAction возвращает POWER_ACTION типизированное значение перечислителя. Значение указывает на действие питания системы , которое в настоящее время выполняется для компьютера. Дополнительные сведения см. в разделе "Примечания".
Комментарии
Метод GetSystemPowerAction позволяет драйверу определить, происходит ли переход питания устройства из-за простоя (или пробуждения) или из-за того, что весь компьютер переходит (или покидает) состояние с низким энергопотреблением.
Драйвер должен вызывать GetSystemPowerAction только из функций обратного вызова событий, вызываемых платформой, когда устройство входит в состояние с низким энергопотреблением или возвращается в рабочее состояние.
Значение, возвращаемое Командой GetSystemPowerAction, зависит от следующих ситуаций:
- Если компьютер находится в состоянии низкого энергопотребления, когда драйвер вызывает GetSystemPowerAction, метод возвращает причину, по которой компьютер входит в состояние с низким энергопотреблением. Например, метод возвращает PowerActionSleep , если компьютер входит в состояние с низким энергопотреблением S1, S2 или S3.
- Если компьютер возвращается в рабочее состояние (S0) из состояния с низким энергопотреблением, когда драйвер вызывает GetSystemPowerAction, метод возвращает причину, по которой компьютер перешел в состояние с низким энергопотреблением. Например, метод возвращает PowerActionSleep , если компьютер покидает состояние S1, S2 или S3 с низким энергопотреблением.
- Если компьютер включается (после выключения), когда драйвер вызывает GetSystemPowerAction, метод возвращает PowerActionNone.
- Если устройство входит в состояние простоя с низким энергопотреблением или возвращается в рабочее (D0) состояние, когда драйвер вызывает GetSystemPowerAction, в то время как остальная часть системы остается в рабочем состоянии (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 |