IO_SESSION_STATE 枚举 (wdm.h)

IO_SESSION_STATE 枚举包含指示用户会话当前状态的常量。

语法

typedef enum _IO_SESSION_STATE {
  IoSessionStateCreated,
  IoSessionStateInitialized,
  IoSessionStateConnected,
  IoSessionStateDisconnected,
  IoSessionStateDisconnectedLoggedOn,
  IoSessionStateLoggedOn,
  IoSessionStateLoggedOff,
  IoSessionStateTerminated,
  IoSessionStateMax
} IO_SESSION_STATE, *PIO_SESSION_STATE;

常量

 
IoSessionStateCreated
会话已创建。
IoSessionStateInitialized
会话已初始化,但尚未创建。
IoSessionStateConnected
会话已连接,但用户尚未登录。
IoSessionStateDisconnected
会话已断开连接。
IoSessionStateDisconnectedLoggedOn
用户登录时会话已断开连接。
IoSessionStateLoggedOn
用户已登录到会话。
IoSessionStateLoggedOff
用户已注销会话。
IoSessionStateTerminated
会话已终止。
IoSessionStateMax
指定此枚举类型中的最大值。

注解

当驱动程序调用 IoGetContainerInformation 例程以获取有关用户会话的信息 (InformationClass = IoSessionStateInformation) 时,I/O 管理器会将 IO_SESSION_STATE_INFORMATION 结构写入例程的 Buffer 参数指向的缓冲区。 I/O 管理器将此结构的 SessionState 成员设置为 IoSessionStateMax) 以外的 (IO_SESSION_STATE枚举常量。

下表显示了会话状态转换。 对于每个状态转换,该表显示以下内容:

  • 在灰色框中 (列标签的 from 状态)
  • 声明 (灰色框中的行标签)
  • 导致转换的事件 (白框中的表项)
空白的白框指示无法直接从关联的 from 状态 到对应的 状态 进行转换。 列出会话状态转换的表 在上表中, fromto 状态由 IO_SESSION_STATE 枚举常量表示,事件由 IO_SESSION_EVENT 枚举常量表示。 例如,如果会话状态为 IoSessionStateConnected (表中缩写为“Connected”) ,则 IoSessionEventLogon 事件 (缩写为“Logon”) 会导致转换为 IoSessionStateLoggedOn 状态 (缩写为“LoggedOn”) 。 新会话的起始状态为 IoSessionStateInitialized (缩写为“Initialized”) 。

要求

要求
最低受支持的客户端 在 Windows 7 及更高版本的 Windows 操作系统中受支持。
标头 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Fltkernel.h)

另请参阅

IO_SESSION_EVENT

IO_SESSION_STATE_INFORMATION

IoGetContainerInformation