структура 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) |