Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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