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 列挙値に設定されます。 ドライバーは、このメンバーを読み取り専用として扱う必要があります。 たとえば、以前のシステム電源 IRP でコンピューターが休止状態に入りそうであることを示したが、高速起動用にコンピューターを準備するためにハイブリッド シャットダウンが発生した場合など、このメンバー値は TargetSystemState メンバーと一致しない可能性があります。 詳細については、「解説」を参照してください。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.CurrentSystemState

不透明なメンバー。 システムで使用するために予約されています。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.IgnoreHibernationPath

不透明なメンバー。 システムで使用するために予約されています。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.PseudoTransition

不透明なメンバー。 システムで使用するために予約されています。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.KernelSoftReboot

不透明なメンバー。 システムで使用するために予約されています。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.DirectedDripsTransition

不透明なメンバー。 システムで使用するために予約されています。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.Reserved2

不透明なメンバー。 システムで使用するために予約されています。

DUMMYUNIONNAME.ContextAsUlong

不透明なメンバー。 システムで使用するために予約されています。

注釈

Windows Vista 以降、システム電源 IRPI/O スタックの場所には、SYSTEM_POWER_STATE_CONTEXT構造が含まれています。 IO_STACK_LOCATION 構造体の Power メンバーには、SYSTEM_POWER_STATE_CONTEXT構造体である SystemPowerStateContext メンバーが含まれています。 詳細については、「 IO_STACK_LOCATION」を参照してください。

SYSTEM_POWER_STATE_CONTEXT構造体のサイズは 4 バイトです。 この構造体はビット フィールドに分割され、そのほとんどはドライバーに対して不透明であり、オペレーティング システムでのみ使用するために予約されています。 ただし、これらのビット フィールド TargetSystemStateEffectiveSystemState の 2 つをカーネル モード ドライバーで読み取り、スリープ解除から休止状態のスタートアップと高速スタートアップを区別できます。 詳細については、「 高速スタートアップと Wake-from-Hibernation の区別」を参照してください。

要件

要件
サポートされている最小のクライアント Windows Vista 以降で使用できます。
Header wdm.h (Ntpoapi.h を含む)

こちらもご覧ください

IO_STACK_LOCATION

SYSTEM_POWER_STATE