Método IDebugEventCallbacks::ChangeDebuggeeState (dbgeng.h)
O método de retorno de chamada ChangeDebuggeeState é chamado pelo mecanismo quando ele faz ou detecta alterações no destino.
Sintaxe
HRESULT ChangeDebuggeeState(
[in] ULONG Flags,
[in] ULONG64 Argument
);
Parâmetros
[in] Flags
Especifica o tipo de alterações feitas no destino. Os sinalizadores podem ter um dos seguintes valores:
Valor | Descrição |
---|---|
DEBUG_CDS_ALL | Ocorreu uma alteração geral no destino. Por exemplo, o destino foi executado ou o mecanismo acabou de ser anexado ao destino. |
DEBUG_CDS_REGISTERS | Os registros do processador para o destino foram alterados. |
DEBUG_CDS_DATA | O espaço de dados do destino foi alterado. |
DEBUG_CDS_REFRESH | Informe os clientes da GUI para atualizar janelas do depurador. |
[in] Argument
Fornece informações adicionais sobre a alteração no destino. A interpretação do valor de Argument depende do valor de Flags:
- DEBUG_CDS_ALL
- O valor de Argument é zero.
- DEBUG_CDS_REGISTERS
- Se um único registro tiver sido alterado, o valor de Argument será o índice desse registro. Caso contrário, o valor de Argument será DEBUG_ANY_ID.
- DEBUG_CDS_DATA
-
O valor de Argument especifica qual espaço de dados foi alterado. A tabela a seguir contém os valores possíveis de Argument.
Valor Descrição DEBUG_DATA_SPACE_VIRTUAL A memória virtual do destino foi alterada. DEBUG_DATA_SPACE_PHYSICAL A memória física do destino foi alterada. DEBUG_DATA_SPACE_CONTROL A memória de controle do destino foi alterada. DEBUG_DATA_SPACE_IO As portas de E/S do destino receberam entrada ou saída. DEBUG_DATA_SPACE_MSR Os MSRs (Registros de Model-Specific) do destino foram alterados. DEBUG_DATA_SPACE_BUS_DATA A memória do barramento do destino foi alterada. - DEBUG_CDS_REFRESH
-
A tabela a seguir contém os valores possíveis de Argument.
Valor DEBUG_CDS_REFRESH_EVALUATE DEBUG_CDS_REFRESH_EXECUTE DEBUG_CDS_REFRESH_EXECUTECOMMANDFILE DEBUG_CDS_REFRESH_ADDBREAKPOINT DEBUG_CDS_REFRESH_REMOVEBREAKPOINT DEBUG_CDS_REFRESH_WRITEVIRTUAL DEBUG_CDS_REFRESH_WRITEVIRTUALUNCACHED DEBUG_CDS_REFRESH_WRITEPHYSICAL DEBUG_CDS_REFRESH_WRITEPHYSICAL2 DEBUG_CDS_REFRESH_SETVALUE DEBUG_CDS_REFRESH_SETVALUE2 DEBUG_CDS_REFRESH_SETSCOPE DEBUG_CDS_REFRESH_SETSCOPEFRAMEBYINDEX DEBUG_CDS_REFRESH_SETSCOPEFROMJITDEBUGINFO DEBUG_CDS_REFRESH_SETSCOPEFROMSTOREDEVENT DEBUG_CDS_REFRESH_INLINESTEP DEBUG_CDS_REFRESH_INLINESTEP_PSEUDO
Retornar valor
O valor retornado é ignorado pelo mecanismo, a menos que indique um erro de chamada de procedimento remoto; nesse caso, o cliente, com o qual esse objeto IDebugEventCallbacks está registrado, está desabilitado.
Comentários
O mecanismo chamará ChangeDebuggeeState somente se o sinalizador DEBUG_EVENT_CHANGE_DEBUGGEE_STATE estiver definido na máscara retornada por IDebugEventCallbacks::GetInterestMask.
Para obter mais informações sobre como lidar com eventos, consulte Eventos de monitoramento. Para obter informações sobre como gerenciar a memória do destino, incluindo registros e espaços de dados, consulte Acesso à Memória. Para obter informações sobre a memória virtual e física do destino, consulte Memória virtual e física. Para obter informações sobre a memória de controle do destino, portas de E/S, MSR e memória do barramento, consulte Outros Espaços de Dados.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | dbgeng.h (inclua Dbgeng.h) |