Ocena wyrażeń (zestaw SDK debugowania programu Visual Studio)
W trybie przerwania środowisko IDE musi oceniać proste wyrażenia obejmujące kilka zmiennych programu. Aby przeprowadzić ocenę, aparat debugowania (DE) musi przeanalizować i ocenić wyrażenie wprowadzone w jednym z okien środowiska IDE.
Wyrażenia są tworzone za pomocą metody IDebugExpressionContext2::P arseText i reprezentowane przez wynikowy interfejs IDebugExpression2 .
Interfejs IDebugExpression2 jest implementowany przez de i wywołuje metodę EvalAsync , aby zwrócić interfejs IDebugProperty2 do środowiska IDE, aby wyświetlić wyniki oceny wyrażenia w środowisku IDE. IDebugProperty2::GetPropertyInfo zwraca strukturę używaną do umieszczania wartości wyrażenia w oknie Czujka lub w oknie Ustawienia lokalne .
Pakiet debugowania lub menedżer debugowania sesji (SDM) wywołuje interfejs IDebugExpression2::EvaluateAsync lub EvaluateSync , aby uzyskać interfejs IDebugProperty2 reprezentujący wynik oceny. IDebugProperty2
zawiera metody zwracające nazwę, typ i wartość wyrażenia. Te informacje są wyświetlane w różnych oknach debugera.
Korzystanie z oceny wyrażeń
Aby użyć oceny wyrażeń, należy zaimplementować metodę IDebugExpressionContext2::P arseText i wszystkie metody interfejsu IDebugExpression2 , jak pokazano w poniższej tabeli.
Metoda | opis |
---|---|
EvaluateAsync | Oblicza wyrażenie asynchronicznie. |
Abort | Kończy asynchroniczną ocenę wyrażenia. |
EvaluateSync | Oblicza wyrażenie synchronicznie. |
Synchroniczne i asynchroniczne oceny wymagają zaimplementowania metody IDebugProperty2::GetPropertyInfo . Ocena wyrażenia asynchronicznego wymaga implementacji elementu IDebugExpressionEvaluationCompleteEvent2.