Freigeben über


Ausdrucksauswertung (Visual Studio SDK, das Debuggen)

Während des Unterbrechungsmodus muss die IDE in der Lage sein, die einfachen Ausdrücke auswerten, die mehrere Variablen des Programms. Um dies zu erreichen, muss das Debugmodul (DE) in der Lage sein, einen Ausdruck auszuwerten und zu analysieren, der in eines der Fenster der IDE eingegeben wird.

Ausdrücke werden mithilfe der IDebugExpressionContext2::ParseText-Methode erstellt und werden durch die resultierende IDebugExpression2-Schnittstelle dargestellt.

Die IDebugExpression2-Schnittstelle wird von DE implementiert, und zeigt dessen EvalAsync-Methode aufruft, um eine IDebugProperty2-Schnittstelle zur IDE zurück, um die Ergebnisse der Ausdrucksauswertung in der IDE angezeigt. IDebugProperty2::GetPropertyInfo gibt eine Struktur zurück, das verwendet werden kann, um auf den Wert eines Ausdrucks in einem Überwachungsfenster oder das Fenster Lokal zu setzen.

Die Aufrufe Debuggen auf Debuggen IDebugExpression2::EvaluateAsync oder EvaluateSync des Managers des Pakets oder der Sitzung (SDM), um eine IDebugProperty2-Schnittstelle abzurufen, die das Ergebnis der Auswertung darstellt. IDebugProperty2 verfügt über Methoden, die den Namen, den Typ und den Wert des Ausdrucks zurückgeben. Diese Informationen werden in verschiedenen Debuggerfenstern angezeigt.

Verwenden der Ausdrucksauswertung

Um Ausdrucksauswertung zu verwenden, müssen Sie die IDebugExpressionContext2::ParseText-Methode und alle Methoden der IDebugExpression2-Schnittstelle, wie in der folgenden Tabelle gezeigt implementieren.

Methode

Beschreibung

EvaluateAsync

Wertet einen Ausdruck asynchron aus.

Abort

Beendet die asynchrone Ausdrucksauswertung.

EvaluateSync

Wertet einen Ausdruck synchron aus.

Synchrone und asynchrone Auswertung erfordern die Implementierung der IDebugProperty2::GetPropertyInfo-Methode. Asynchrone Ausdrucksauswertung benötigt die Implementierung von IDebugExpressionEvaluationCompleteEvent2.

Siehe auch

Konzepte

Ausführungssteuerungs-und Zustands-Auswertung