структура SYSTEM_POWER_STATE_CONTEXT (wdm.h)

Структура SYSTEM_POWER_STATE_CONTEXT — это частично непрозрачная системная структура, содержащая сведения о предыдущих состояниях питания системы компьютера.

Синтаксис

typedef struct _SYSTEM_POWER_STATE_CONTEXT {
  union {
    struct {
      ULONG Reserved1 : 8;
      ULONG TargetSystemState : 4;
      ULONG EffectiveSystemState : 4;
      ULONG CurrentSystemState : 4;
      ULONG IgnoreHibernationPath : 1;
      ULONG PseudoTransition : 1;
      ULONG KernelSoftReboot : 1;
      ULONG DirectedDripsTransition : 1;
      ULONG Reserved2 : 8;
    } DUMMYSTRUCTNAME;
    ULONG ContextAsUlong;
  } DUMMYUNIONNAME;
} SYSTEM_POWER_STATE_CONTEXT, *PSYSTEM_POWER_STATE_CONTEXT;

Члены

DUMMYUNIONNAME

Неименованное объединение.

DUMMYUNIONNAME.DUMMYSTRUCTNAME

Неименованная структура.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.Reserved1

Непрозрачный элемент. Зарезервировано для системного использования.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.TargetSystemState

Целевое состояние питания системы предыдущего IRP питания системы , полученного драйвером. Для этого элемента задано значение перечисления SYSTEM_POWER_STATE . Драйверы должны рассматривать этот элемент как доступный только для чтения.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.EffectiveSystemState

Действующее предыдущее состояние питания системы, воспринимаемое пользователем. Для этого элемента задано значение перечисления SYSTEM_POWER_STATE . Драйверы должны рассматривать этот элемент как доступный только для чтения. Это значение элемента может не совпадать с элементом TargetSystemState , если, например, предыдущая версия IRP питания системы указывала на то, что компьютер собирался перейти в режим гибернации, но вместо этого произошло гибридное завершение работы, чтобы подготовить компьютер к быстрому запуску. Дополнительные сведения см. в подразделе "Примечания".

DUMMYUNIONNAME.DUMMYSTRUCTNAME.CurrentSystemState

Непрозрачный элемент. Зарезервировано для системного использования.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.IgnoreHibernationPath

Непрозрачный элемент. Зарезервировано для системного использования.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.PseudoTransition

Непрозрачный элемент. Зарезервировано для системного использования.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.KernelSoftReboot

Непрозрачный элемент. Зарезервировано для системного использования.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.DirectedDripsTransition

Непрозрачный элемент. Зарезервировано для системного использования.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.Reserved2

Непрозрачный элемент. Зарезервировано для системного использования.

DUMMYUNIONNAME.ContextAsUlong

Непрозрачный элемент. Зарезервировано для системного использования.

Комментарии

Начиная с Windows Vista расположение стека ввода-вывода в системном IRP питания содержит структуру SYSTEM_POWER_STATE_CONTEXT . Элемент Power структуры IO_STACK_LOCATION содержит элемент SystemPowerStateContext , который является SYSTEM_POWER_STATE_CONTEXT структурой. Дополнительные сведения см. в разделе IO_STACK_LOCATION.

Размер структуры SYSTEM_POWER_STATE_CONTEXT составляет четыре байта. Эта структура разделена на битовые поля, большинство из которых непрозрачны для драйверов и зарезервированы исключительно для использования операционной системой. Однако два из этих битовых полей, TargetSystemState и EffectiveSystemState, могут считываться драйверами в режиме ядра, чтобы отличить быстрый запуск от запуска при выходе из спящего режима. Дополнительные сведения см. в разделе Отличие быстрого запуска от пробуждения от гибернации.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows Vista.
Верхняя часть wdm.h (включая Ntpoapi.h)

См. также раздел

IO_STACK_LOCATION

SYSTEM_POWER_STATE