Поделиться через


Метод IDebugEventCallbacks::SessionStatus (dbgeng.h)

Метод обратного вызова SessionStatus вызывается подсистемой при изменении в сеансе отладчика.

Синтаксис

HRESULT SessionStatus(
  [in] ULONG Status
);

Параметры

[in] Status

Указывает новое состояние сеанса отладчика. В следующей таблице описаны возможные значения.

Значение Описание
DEBUG_SESSION_ACTIVE Сеанс отладчика запущен.
DEBUG_SESSION_END_SESSION_ACTIVE_TERMINATE Сеанс завершился отправкой DEBUG_END_ACTIVE_TERMINATE в EndSession.
DEBUG_SESSION_END_SESSION_ACTIVE_DETACH Сеанс был завершен отправкой DEBUG_END_ACTIVE_DETACH в EndSession.
DEBUG_SESSION_END_SESSION_PASSIVE Сеанс был завершен отправкой DEBUG_END_PASSIVE в EndSession.
DEBUG_SESSION_END Целевой объект выполнился до завершения, завершив сеанс.
DEBUG_SESSION_REBOOT Целевой компьютер перезагрузился, завершив сеанс.
DEBUG_SESSION_HIBERNATE Целевой компьютер перешел в режим гибернации, завершив сеанс.
DEBUG_SESSION_FAILURE Подсистеме не удалось продолжить сеанс.

Возвращаемое значение

Возвращаемое значение этого метода игнорируется подсистемой.

Комментарии

Этот метод вызывается обработчиком, только если флаг DEBUG_EVENT_SESSION_STATUS установлен в маске, возвращаемой методом IDebugEventCallbacks::GetInterestMask.

После того как подсистема уведомит все обратные вызовы событий об изменении состояния сеанса, она также будет уведомлять все загруженные расширения , которые экспортируют метод обратного вызова DebugExtensionNotify . Значение, которое он передает расширениям, зависит от значения Status. Если параметр Status имеет значение DEBUG_SESSION_ACTIVE, он передается DEBUG_SESSION_ACTIVE; в противном случае он передает DEBUG_SESSION_INACTIVE.

В DEBUG_SESSION_ACTIVE случае подсистема следует за уведомлением об изменении сеанса отладчика с уведомлением об изменении целевого состояния, вызывая IDebugEventCallbacks::ChangeDebuggeeState для обратных вызовов события и передавая DEBUG_CDS_ALL в параметре Flags . Во всех остальных случаях подсистема предшествует этому уведомлению об изменении состояния подсистемы, вызывая IDebugEventCallbacks::ChangeEngineState в обратных вызовах события и передавая DEBUG_CES_EXECUTION_STATUS в параметре Flags .

Дополнительные сведения об обработке событий см. в разделе Мониторинг событий. Сведения о сеансах отладчика см. в разделе Отладка сеанса и модели выполнения.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть dbgeng.h (включая Dbgeng.h)