Поделиться через


Метод 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.
Дополнительные сведения о состояниях с низкой мощностью см. в разделе Устройство вводит 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 (include Wudfddi.h)
DLL WUDFx.dll

См. также

IWDFDevice2