Метод IDebugEventCallbacksWide::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 установлен в маске, возвращаемой IDebugEventCallbacksWide::GetInterestMask.
После того как подсистема уведомит все обратные вызовы событий об изменении состояния сеанса, он также уведомит все загруженные расширения , которые экспортируют метод обратного вызова DebugExtensionNotify . Значение, которое он передает расширениям, зависит от значения Status. Если состояние DEBUG_SESSION_ACTIVE, оно передается DEBUG_SESSION_ACTIVE; в противном случае он передает DEBUG_SESSION_INACTIVE.
В DEBUG_SESSION_ACTIVE случае подсистема следует за уведомлением об изменении сеанса отладчика с уведомлением об изменении целевого состояния, вызывая IDebugEventCallbacksWide::ChangeDebuggeeState для обратных вызовов события и передавая DEBUG_CDS_ALL в параметре Flags . Во всех остальных случаях подсистема предшествует этому уведомлению об изменении состояния подсистемы, вызывая IDebugEventCallbacksWide::ChangeEngineState для обратных вызовов событий и передавая DEBUG_CES_EXECUTION_STATUS в параметре Flags .
Дополнительные сведения об обработке событий см. в разделе События мониторинга. Сведения о сеансах отладчика см. в разделе Отладка сеансов и модель выполнения.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | dbgeng.h (включая Dbgeng.h) |