Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Durante o modo de interrupção, o IDE deve avaliar expressões simples envolvendo várias variáveis do programa. Para realizar sua avaliação, o mecanismo de depuração (DE) deve analisar e avaliar uma expressão que entrou em uma das janelas do IDE.
As expressões são criadas com o método IDebugExpressionContext2::P arseText e representadas pela interface IDebugExpression2 resultante.
A interface IDebugExpression2 é implementada pelo DE e chama seu método EvalAsync para retornar uma interface IDebugProperty2 para o IDE, a fim de exibir os resultados da avaliação de expressão no IDE. IDebugProperty2::GetPropertyInfo retorna uma estrutura que é usada para colocar o valor de uma expressão em uma janela Watch ou na janela Locals .
O pacote de depuração ou gerenciador de depuração de sessão (SDM) chama IDebugExpression2::EvaluateAsync ou EvaluateSync para obter uma interface IDebugProperty2 que representa o resultado da avaliação.
IDebugProperty2 tem métodos que retornam o nome, o tipo e o valor da expressão. Essas informações aparecem em várias janelas do depurador.
Usando a avaliação de expressão
Para usar a avaliação de expressão, você deve implementar o método IDebugExpressionContext2::P arseText e todos os métodos da interface IDebugExpression2 , conforme mostrado na tabela a seguir.
| Método | Description |
|---|---|
| AvaliarAsync | Avalia uma expressão de forma assíncrona. |
| Abortar | Termina a avaliação assíncrona da expressão. |
| EvaluateSync | Avalia uma expressão de forma síncrona. |
A avaliação síncrona e assíncrona requer a implementação do método IDebugProperty2::GetPropertyInfo . A avaliação assíncrona de expressões requer a implementação de IDebugExpressionEvaluationCompleteEvent2.