SYSTEM_POWER_STATE_CONTEXT Struktur (wdm.h)
Die SYSTEM_POWER_STATE_CONTEXT Struktur ist eine teilweise undurchsichtige Systemstruktur, die Informationen über die vorherigen Systemleistungszustände eines Computers enthält.
Syntax
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;
Angehörige
DUMMYUNIONNAME
Unbenannte Vereinigung.
DUMMYUNIONNAME.DUMMYSTRUCTNAME
Unbenannte Struktur.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.Reserved1
Undurchsichtiges Element. Reserviert für die Systemverwendung.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.TargetSystemState
Der Leistungsstatus des Zielsystems des vorherigen Systemleistungs-IRP, das der Treiber empfangen hat. Dieses Element wird auf einen SYSTEM_POWER_STATE Enumerationswert festgelegt. Treiber sollten dieses Mitglied als schreibgeschützt behandeln.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.EffectiveSystemState
Der effektive vorherige Systemleistungszustand, wie er vom Benutzer wahrgenommen wird. Dieses Element wird auf einen SYSTEM_POWER_STATE Enumerationswert festgelegt. Treiber sollten dieses Mitglied als schreibgeschützt behandeln. Dieser Memberwert stimmt möglicherweise nicht mit dem TargetSystemState Member überein, wenn beispielsweise der vorherige Systembetriebs-IRP angibt, dass der Computer in den Ruhezustand wechselt, aber stattdessen ein hybrides Herunterfahren aufgetreten ist, um den Computer für einen schnellen Start vorzubereiten. Weitere Informationen finden Sie in den Hinweisen.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.CurrentSystemState
Undurchsichtiges Element. Reserviert für die Systemverwendung.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.IgnoreHibernationPath
Undurchsichtiges Element. Reserviert für die Systemverwendung.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.PseudoTransition
Undurchsichtiges Element. Reserviert für die Systemverwendung.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.KernelSoftReboot
Undurchsichtiges Element. Reserviert für die Systemverwendung.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.DirectedDripsTransition
Undurchsichtiges Element. Reserviert für die Systemverwendung.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.Reserved2
Undurchsichtiges Element. Reserviert für die Systemverwendung.
DUMMYUNIONNAME.ContextAsUlong
Undurchsichtiges Element. Reserviert für die Systemverwendung.
Bemerkungen
Ab Windows Vista enthält die -I/O-Position in einem System-IRP- eine SYSTEM_POWER_STATE_CONTEXT Struktur. Das Power-Element der IO_STACK_LOCATION-Struktur enthält ein SystemPowerStateContext--Element, das eine SYSTEM_POWER_STATE_CONTEXT Struktur ist. Weitere Informationen finden Sie unter IO_STACK_LOCATION.
Die Größe der SYSTEM_POWER_STATE_CONTEXT Struktur beträgt vier Byte. Diese Struktur ist in Bitfelder unterteilt, von denen die meisten für Treiber undurchsichtig sind und ausschließlich für die Verwendung durch das Betriebssystem reserviert sind. Zwei dieser Bitfelder, TargetSystemState und EffectiveSystemState, können jedoch von Kernelmodustreibern gelesen werden, um einen schnellen Start von einem Start aus dem Ruhezustand zu unterscheiden. Weitere Informationen finden Sie unter Distinguishing Fast Startup from Wake-from-Hibernation.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar ab Windows Vista. |
Header- | wdm.h (include Ntpoapi.h) |