Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Im folgenden Abschnitt wird der Prozess beschrieben, der auftritt, wenn sich der Debugger im Unterbrechungsmodus befindet und eine Ausdrucksauswertung durchführen muss.
Ausdrucksauswertungsprozess
Im Folgenden sind die grundlegenden Schritte zum Auswerten eines Ausdrucks aufgeführt:
Der Sitzungsdebug-Manager (SDM) ruft IDebugStackFrame2::GetExpressionContext auf, um eine Ausdruckskontextschnittstelle abzurufen, IDebugExpressionContext2.
Anschließend ruft die SDM mit der zu analysierenden Zeichenfolge IDebugExpressionContext2::ParseText auf.
Wenn ParseText S_OK nicht zurückgibt, wird der Grund für den Fehler zurückgegeben.
-sonst-
Wenn ParseText S_OK zurückgibt, kann die SDM entweder IDebugExpression2::EvaluateSync oder IDebugExpression2::EvaluateAsync aufrufen, um einen endgültigen Wert aus dem analysierten Ausdruck abzurufen.
Bei Verwendung
IDebugExpression2::EvaluateSynckommuniziert die angegebene Rückrufschnittstelle den laufenden Prozess der Auswertung. Der letzte Wert wird in einer IDebugProperty2-Schnittstelle zurückgegeben.Bei Verwendung
IDebugExpression2::EvaluateAsynckommuniziert die angegebene Rückrufschnittstelle den laufenden Prozess der Auswertung. Nach Abschluss der Auswertung sendet EvaluateAsync eine IDebugExpressionEvaluationCompleteEvent2-Schnittstelle über den Rückruf. Mit dieser Ereignisschnittstelle ergibt sich der endgültige Wert mit GetResult.