структура 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, расположение стека ввода-вывода в системном power 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 (include Ntpoapi.h) |