IDebugExpression2IDebugExpression2

Esta interfaz representa una lista de expresión analizada de enlace y de evaluación.This interface represents a parsed expression ready for binding and evaluating.

SintaxisSyntax

IDebugExpression2 : IUnknown  

Notas para los implementadoresNotes for Implementers

El motor de depuración (Alemania) implementa esta interfaz para representar una expresión analizada lista para ser evaluada.The debug engine (DE) implements this interface to represent a parsed expression ready to be evaluated.

Notas para los llamadoresNotes for Callers

Una llamada a ParseText devuelve esta interfaz.A call to ParseText returns this interface. GetExpressionContext devuelve el IDebugExpressionContext2 interfaz.GetExpressionContext returns the IDebugExpressionContext2 interface. Estas interfaces son accesibles solo cuando se ha detenido el programa que se está depurando y un marco de pila está disponible.These interfaces are accessible only when the program being debugged has been paused and a stack frame is available.

Métodos en orden de VtableMethods in Vtable Order

La tabla siguiente muestran los métodos de IDebugExpression2.The following table shows the methods of IDebugExpression2.

MétodoMethod DescripciónDescription
EvaluateAsyncEvaluateAsync Evalúa esta expresión de forma asincrónica.Evaluates this expression asynchronously.
AnulaciónAbort Finaliza la evaluación de expresiones asincrónica.Ends asynchronous expression evaluation.
EvaluateSyncEvaluateSync Evalúa esta expresión de forma sincrónica.Evaluates this expression synchronously.

ComentariosRemarks

Cuando un programa se ha detenido, el Administrador de sesión de depuración (SDM) Obtiene un marco de pila de la DE con una llamada a EnumFrameInfo.When a program has halted, the session debug manager (SDM) obtains a stack frame from the DE with a call to EnumFrameInfo. El SDM, a continuación, llama GetExpressionContext para obtener la IDebugExpressionContext2 interfaz.The SDM then calls GetExpressionContext to get the IDebugExpressionContext2 interface. Esto es seguido por una llamada a ParseText para crear el IDebugExpression2 interfaz que representa la expresión analizada lista para ser evaluada.This is followed by a call to ParseText to create the IDebugExpression2 interface, which represents the parsed expression ready to be evaluated.

El SDM llama cualquiera EvaluateSync o EvaluateAsync realmente evaluar la expresión y generar un valor.The SDM calls either EvaluateSync or EvaluateAsync to actually evaluate the expression and produce a value.

En una implementación de IDebugExpressionContext2::ParseText, la DE usa de COM CoCreateInstance función para crear una instancia de un evaluador de expresiones y obtener un IDebugExpressionEvaluator interfaz (vea el ejemplo de la IDebugExpressionEvaluator interfaz).In an implementation of IDebugExpressionContext2::ParseText, the DE uses COM's CoCreateInstance function to instantiate an expression evaluator and get an IDebugExpressionEvaluator interface (see the Example in the IDebugExpressionEvaluator interface). A continuación, llama a la DE analizar para obtener un IDebugParsedExpression interfaz.The DE then calls Parse to obtain an IDebugParsedExpression interface. Esta interfaz se utiliza en la implementación de IDebugExpression2::EvaluateSync y IDebugExpression2::EvaluateAsync para realizar la evaluación.This interface is used in the implementation of IDebugExpression2::EvaluateSync and IDebugExpression2::EvaluateAsync to perform the evaluation.

RequisitosRequirements

Encabezado: msdbg.hHeader: msdbg.h

Namespace: Microsoft.VisualStudio.Debugger.InteropNamespace: Microsoft.VisualStudio.Debugger.Interop

Ensamblado: Microsoft.VisualStudio.Debugger.Interop.dllAssembly: Microsoft.VisualStudio.Debugger.Interop.dll

Vea tambiénSee Also

Interfaces de núcleo Core Interfaces
GetExpressionGetExpression