다음을 통해 공유


식 계산(Visual Studio 디버깅 SDK)

중단 모드 중에 IDE는 여러 프로그램 변수와 관련된 간단한 식을 계산해야 합니다. 계산을 수행하려면 DE(디버그 엔진)가 IDE 창 중 하나에 입력된 식을 구문 분석하고 계산해야 합니다.

식은 IDebugExpressionContext2::ParseText 메서드를 사용하여 생성되고 결과 IDebugExpression2 인터페이스로 표시됩니다.

IDebugExpression2 인터페이스는 DE에 의해 구현되며 IDE에서 식 계산 결과를 표시하기 위해 EvalAsync 메서드를 호출하여 IDebugProperty2 인터페이스를 IDE에 반환합니다. IDebugProperty2::GetPropertyInfo는 식 값을 조사식 창이나 로컬 창에 넣는 데 사용되는 구조체를 반환합니다.

디버그 패키지 또는 SDM(세션 디버그 관리자)은 IDebugExpression2::EvaluateAsync 또는 EvaluateSync를 호출하여 계산 결과를 나타내는 IDebugProperty2 인터페이스를 가져옵니다. IDebugProperty2에는 식의 이름, 형식 및 값을 반환하는 메서드가 있습니다. 이 정보는 다양한 디버거 창에 표시됩니다.

식 계산 사용

식 계산을 사용하려면 다음 표와 같이 IDebugExpressionContext2::ParseText 메서드 및 IDebugExpression2 인터페이스의 모든 메서드를 구현해야 합니다.

메서드 설명
EvaluateAsync 식을 비동기적으로 계산합니다.
Abort 비동기적 식 계산을 종료합니다.
EvaluateSync 식을 동기적으로 계산합니다.

동기적 및 비동기적 계산에는 모두 IDebugProperty2::GetPropertyInfo 메서드의 구현이 필요합니다. 비동기적 식 계산에는 IDebugExpressionEvaluationCompleteEvent2를 구현해야 합니다.

참고 항목