Compartilhar via


Método IDebugEventCallbacks::SessionStatus (dbgeng.h)

O método de retorno de chamada SessionStatus é chamado pelo mecanismo quando ocorre uma alteração na sessão do depurador.

Sintaxe

HRESULT SessionStatus(
  [in] ULONG Status
);

Parâmetros

[in] Status

Especifica o novo status da sessão do depurador. A tabela a seguir descreve os valores possíveis.

Valor Descrição
DEBUG_SESSION_ACTIVE Uma sessão do depurador foi iniciada.
DEBUG_SESSION_END_SESSION_ACTIVE_TERMINATE A sessão foi encerrada enviando DEBUG_END_ACTIVE_TERMINATE para EndSession.
DEBUG_SESSION_END_SESSION_ACTIVE_DETACH A sessão foi encerrada enviando DEBUG_END_ACTIVE_DETACH para EndSession.
DEBUG_SESSION_END_SESSION_PASSIVE A sessão foi encerrada enviando DEBUG_END_PASSIVE para EndSession.
DEBUG_SESSION_END O destino foi executado até a conclusão, encerrando a sessão.
DEBUG_SESSION_REBOOT O computador de destino foi reinicializado, encerrando a sessão.
DEBUG_SESSION_HIBERNATE O computador de destino entrou em hibernação, encerrando a sessão.
DEBUG_SESSION_FAILURE O mecanismo não pôde continuar a sessão.

Retornar valor

O valor retornado desse método é ignorado pelo mecanismo.

Comentários

Esse método só será chamado pelo mecanismo se o sinalizador DEBUG_EVENT_SESSION_STATUS for definido na máscara retornada por IDebugEventCallbacks::GetInterestMask.

Depois que o mecanismo notificar todos os retornos de chamada de evento da alteração na sessão status, ele também notificará todas as extensões carregadas que exportam o método de retorno de chamada DebugExtensionNotify. O valor que ele passa para as extensões depende do valor de Status. Se Status for DEBUG_SESSION_ACTIVE, ele passará DEBUG_SESSION_ACTIVE; caso contrário, ele passa DEBUG_SESSION_INACTIVE.

No caso DEBUG_SESSION_ACTIVE, o mecanismo segue a notificação de alteração de sessão do depurador com uma notificação de alteração de estado de destino chamando IDebugEventCallbacks::ChangeDebuggeeState nos retornos de chamada de evento e passando DEBUG_CDS_ALL no parâmetro Flags . Em todos os outros casos, o mecanismo precede essa notificação com uma notificação de alteração de estado do mecanismo chamando IDebugEventCallbacks::ChangeEngineState nos retornos de chamada de evento e passando DEBUG_CES_EXECUTION_STATUS no parâmetro Flags .

Para obter mais informações sobre como lidar com eventos, consulte Eventos de monitoramento. Para obter informações sobre sessões do depurador, consulte Depurando o modelo de sessão e execução.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho dbgeng.h (inclua Dbgeng.h)