IDebugExpression2IDebugExpression2

Cette interface représente un prêt de l’expression analysée pour la liaison et l’évaluation.This interface represents a parsed expression ready for binding and evaluating.

SyntaxeSyntax

IDebugExpression2 : IUnknown  

Notes pour les implémenteursNotes for Implementers

Le moteur de débogage (DE) implémente cette interface pour représenter une expression analysée prête à être évaluée.The debug engine (DE) implements this interface to represent a parsed expression ready to be evaluated.

Remarques pour les appelantsNotes for Callers

Un appel à ParseText retourne cette interface.A call to ParseText returns this interface. GetExpressionContext retourne le IDebugExpressionContext2 interface.GetExpressionContext returns the IDebugExpressionContext2 interface. Ces interfaces sont accessibles uniquement lorsque le programme en cours de débogage a été interrompu et un frame de pile n’est disponible.These interfaces are accessible only when the program being debugged has been paused and a stack frame is available.

Méthodes dans l'ordre VtableMethods in Vtable Order

Le tableau suivant présente les méthodes de IDebugExpression2.The following table shows the methods of IDebugExpression2.

MéthodeMethod DescriptionDescription
EvaluateAsyncEvaluateAsync Évalue cette expression de façon asynchrone.Evaluates this expression asynchronously.
AbandonAbort Termine l’évaluation de l’expression asynchrone.Ends asynchronous expression evaluation.
EvaluateSyncEvaluateSync Évalue cette expression de façon synchrone.Evaluates this expression synchronously.

NotesRemarks

Lorsqu’un programme s’est arrêté, le Gestionnaire de session de débogage (SDM) Obtient un frame de pile de la DE avec un appel à EnumFrameInfo.When a program has halted, the session debug manager (SDM) obtains a stack frame from the DE with a call to EnumFrameInfo. Le SDM appelle ensuite GetExpressionContext pour obtenir le IDebugExpressionContext2 interface.The SDM then calls GetExpressionContext to get the IDebugExpressionContext2 interface. Il est suivi par un appel à ParseText pour créer le IDebugExpression2 interface qui représente l’expression analysée prête à être évaluée.This is followed by a call to ParseText to create the IDebugExpression2 interface, which represents the parsed expression ready to be evaluated.

Appelle le SDM EvaluateSync ou EvaluateAsync pour évaluer l’expression et produire une valeur.The SDM calls either EvaluateSync or EvaluateAsync to actually evaluate the expression and produce a value.

Dans une implémentation de IDebugExpressionContext2::ParseText, le D’utilise COM CoCreateInstance fonction pour instancier un évaluateur d’expression et obtenir un IDebugExpressionEvaluator interface (voir l’exemple dans le IDebugExpressionEvaluator interface).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). Le D’appelle ensuite analyser pour obtenir un IDebugParsedExpression interface.The DE then calls Parse to obtain an IDebugParsedExpression interface. Cette interface est utilisée dans l’implémentation de IDebugExpression2::EvaluateSync et IDebugExpression2::EvaluateAsync pour effectuer l’évaluation.This interface is used in the implementation of IDebugExpression2::EvaluateSync and IDebugExpression2::EvaluateAsync to perform the evaluation.

SpécificationsRequirements

En-tête : msdbg.hHeader: msdbg.h

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

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

Voir aussiSee Also

Interfaces de base Core Interfaces
GetExpressionGetExpression