Udostępnij za pośrednictwem


IDebugExpression2

Ten interfejs reprezentuje przeanalizowane wyrażenie gotowe do powiązania i oceny.

Składnia

IDebugExpression2 : IUnknown

Uwagi dotyczące implementacji

Aparat debugowania (DE) implementuje ten interfejs w celu reprezentowania przeanalizowanego wyrażenia gotowego do oceny.

Uwagi dotyczące wywoływania

Wywołanie metody ParseText zwraca ten interfejs. Polecenie GetExpressionContext zwraca interfejs IDebugExpressionContext2 . Te interfejsy są dostępne tylko wtedy, gdy debugowany program został wstrzymany, a ramka stosu jest dostępna.

Metody w tabeli Vtable Order

W poniższej tabeli przedstawiono metody .IDebugExpression2

Metoda opis
EvaluateAsync Oblicza to wyrażenie asynchronicznie.
Abort Kończy asynchroniczną ocenę wyrażenia.
EvaluateSync Oblicza to wyrażenie synchronicznie.

Uwagi

Po zatrzymaniu programu menedżer debugowania sesji (SDM) uzyskuje ramkę stosu z de z wywołaniem enumFrameInfo. Następnie SDM wywołuje metodę GetExpressionContext, aby uzyskać interfejs IDebugExpressionContext2. Następnie następuje wywołanie metody ParseText w celu utworzenia interfejsu IDebugExpression2 , który reprezentuje przeanalizowane wyrażenie gotowe do oceny.

Funkcja SDM wywołuje metodę EvaluateSync lub EvaluateAsync , aby faktycznie oszacować wyrażenie i wygenerować wartość.

W implementacji IDebugExpressionContext2::ParseTextde używa funkcji COM do utworzenia wystąpienia ewaluatora CoCreateInstance wyrażeń i pobrania interfejsu IDebugExpressionEvaluator (zobacz przykład w interfejsie IDebugExpressionEvaluator ). Funkcja DE następnie wywołuje metodę Parse w celu uzyskania interfejsu IDebugParsedExpression . Ten interfejs jest używany w implementacji i IDebugExpression2::EvaluateAsync do przeprowadzania IDebugExpression2::EvaluateSync oceny.

Wymagania

Nagłówek: msdbg.h

Przestrzeń nazw: Microsoft.VisualStudio.Debugger.Interop

Zestaw: Microsoft.VisualStudio.Debugger.Interop.dll

Zobacz też