перечисление 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), диспетчер ввода-вывода записывает структуру IO_SESSION_STATE_INFORMATION в буфер, на который указывает параметр Buffer подпрограммы. Диспетчер ввода-вывода задает элемент SessionState этой структуры в виде константы перечисления IO_SESSION_STATE (кроме IoSessionStateMax).

В следующей таблице показаны переходы состояния сеанса. Для каждого перехода состояния в таблице показаны следующие данные:

  • Состояние from (метка столбца в сером поле)
  • Состояние to (метка строки в сером поле)
  • Событие, которое вызывает переход (запись таблицы в белом поле)
Пустое белое поле указывает, что переход из связанного состояния в соответствующее состояние не может произойти. Переходы состояния сеанса в списке таблиц В предыдущей таблице состояния from и to представлены константами перечисления IO_SESSION_STATE , а события представлены константами перечисления IO_SESSION_EVENT . Например, если состояние сеанса — IoSessionStateConnected (в таблице сокращенно "Подключено"), событие IoSessionEventLogon (сокращенное название — Logon) приводит к переходу в состояние IoSessionStateLoggedOn (сокращенное как LoggedOn). Начальное состояние нового сеанса — IoSessionStateInitialized (сокращенное название — "Инициализировано").

Требования

Требование Значение
Минимальная версия клиента Поддерживается в Windows 7 и более поздних версиях операционной системы Windows.
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h, Fltkernel.h)

См. также раздел

IO_SESSION_EVENT

IO_SESSION_STATE_INFORMATION

IoGetContainerInformation