共用方式為


IDebugExpression2

這個介面表示剖析的運算式可供繫結和評估。

IDebugExpression2 : IUnknown

實作器注意事項

偵錯引擎 (DE) 會實作這個介面表示剖析的運算式即可進行評估。

呼叫者的備忘稿

呼叫IDebugExpressionContext2::ParseText會傳回這個介面。 IDebugStackFrame2::GetExpressionContext傳回IDebugExpressionContext2介面。 這些介面在偵錯程式已暫停,而且堆疊框架使用時,才可以存取。

方法 Vtable 順序

下表顯示的方法IDebugExpression2

方法

描述

IDebugExpression2::EvaluateAsync

以非同步方式評估此運算式。

IDebugExpression2::Abort

結束非同步運算式的評估。

IDebugExpression2::EvaluateSync

以同步方式評估此運算式。

備註

程式已停止執行,當工作階段偵錯管理員 (SDM) 會從呼叫 DE 取得堆疊框架IDebugThread2::EnumFrameInfo。 SDM 會呼叫IDebugStackFrame2::GetExpressionContext以取得IDebugExpressionContext2介面。 這後面會呼叫IDebugExpressionContext2::ParseText來建立IDebugExpression2介面,這表示剖析準備好要評估的運算式。

SDM 會呼叫其中一個IDebugExpression2::EvaluateSyncIDebugExpression2::EvaluateAsync實際上評估運算式,並產生一個值。

在實作中的IDebugExpressionContext2::ParseText,DE 使用 COM 的CoCreateInstance函式來具現化的運算式評估工具,並取得IDebugExpressionEvaluator介面 (請參閱範例IDebugExpressionEvaluator介面)。 接著再呼叫 DE IDebugExpressionEvaluator::Parse以取得IDebugParsedExpression介面。 此介面用在實作中的IDebugExpression2::EvaluateSyncIDebugExpression2::EvaluateAsync以執行評估。

需求

標頭: msdbg.h

Namespace: Microsoft.VisualStudio.Debugger.Interop

組件: Microsoft.VisualStudio.Debugger.Interop.dll

請參閱

參考

IDebugExpressionEvaluationCompleteEvent2::GetExpression

概念

核心介面