IDebugExpression2
Esta interfaz representa una expresión analizada lista para enlazar y evaluar.
Sintaxis
IDebugExpression2 : IUnknown
Notas para los implementadores
El motor de depuración (DE) implementa esta interfaz para representar una expresión analizada lista para evaluarse.
Notas para autores de la llamada
Una llamada a ParseText devuelve esta interfaz. GetExpressionContext devuelve la interfaz IDebugExpressionContext2 . Estas interfaces solo son accesibles cuando se ha pausado el programa que se está depurando y hay disponible un marco de pila.
Métodos en orden de Vtable
En la tabla siguiente se muestran los métodos de IDebugExpression2
.
Método | Descripción |
---|---|
EvaluateAsync | Evalúa esta expresión de forma asincrónica. |
Abort | Finaliza la evaluación de expresiones asincrónicas. |
EvaluateSync | Evalúa esta expresión de forma sincrónica. |
Comentarios
Cuando un programa se ha detenido, el administrador de depuración de sesión (SDM) obtiene un marco de pila del DE con una llamada a EnumFrameInfo. A continuación, SDM llama a GetExpressionContext para obtener la interfaz IDebugExpressionContext2 . Esto va seguido de una llamada a ParseText para crear la IDebugExpression2
interfaz, que representa la expresión analizada lista para evaluarse.
El SDM llama a EvaluateSync o EvaluateAsync para evaluar realmente la expresión y generar un valor.
En una implementación de IDebugExpressionContext2::ParseText
, el DE usa la función com CoCreateInstance
para crear instancias de un evaluador de expresiones y obtener una interfaz IDebugExpressionEvaluator (vea el ejemplo en la IDebugExpressionEvaluator
interfaz). A continuación, el DE llama a Parse para obtener una interfaz IDebugParsedExpression . Esta interfaz se usa en la implementación de IDebugExpression2::EvaluateSync
y IDebugExpression2::EvaluateAsync
para realizar la evaluación.
Requisitos
Encabezado: msdbg.h
Espacio de nombres: Microsoft.VisualStudio.Debugger.Interop
Ensamblado: Microsoft.VisualStudio.Debugger.Interop.dll