Partilhar via


Avaliação da expressão no modo de interrupção

A seguir descreve o processo que ocorre quando o depurador está no modo de interrupção e deve conduzir a avaliação da expressão.

Processo de avaliação de expressão

Estas são as etapas básicas envolvidas na avaliação de uma expressão:

  1. O Gerenciador de sessão de depuração (SDM) chama IDebugStackFrame2::GetExpressionContext para obter uma interface de contexto de expressão, IDebugExpressionContext2.

  2. O SDM chama IDebugExpressionContext2::ParseText com a seqüência de caracteres a ser analisado.

  3. Se não retornar ParseText S_OK, a razão do erro é retornada.

    -Caso contrário-

    Se ParseText retornar S_OK, o SDM pode chamar um IDebugExpression2::EvaluateSync ou IDebugExpression2::EvaluateAsync para obter um valor final da expressão analisada.

    • No caso de uso de IDebugExpression2::EvaluateSync, a interface de retorno de chamada determinado é usada para comunicar o contínuo processo de avaliação. O valor final é retornado em um IDebugProperty2 interface.

    • No caso de uso de IDebugExpression2::EvaluateAsync, a interface de retorno de chamada determinado é usada para comunicar o contínuo processo de avaliação. Uma vez concluída a avaliação, EvaluateAsync envia um IDebugExpressionEvaluationCompleteEvent2 interface por meio do retorno de chamada. Com essa interface de evento, o valor final pode ser obtido com IDebugExpressionEvaluationCompleteEvent2::GetResult.

Consulte também

Conceitos

Chamar o depurador eventos