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 de 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. |
Valor de retorno
O valor retornado desse método é ignorado pelo mecanismo.
Observações
Esse método só será chamado pelo mecanismo se o sinalizador de DEBUG_EVENT_SESSION_STATUS estiver definido na máscara retornada por IDebugEventCallbacks::GetInterestMask.
Depois que o mecanismo notificar todos os retornos de chamada de evento da alteração no status da sessão, ele também notificará quaisquer extensões de carregadas que exportem 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 será aprovado 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 do evento e passando DEBUG_CDS_ALL no parâmetro sinalizadores do. 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 sinalizadores.
Para obter mais informações sobre como lidar com eventos, consulte Eventos de Monitoramento. Para obter informações sobre sessões de depurador, consulte depuração de sessão e modelo de execução.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | dbgeng.h (inclua Dbgeng.h) |