IDebugProperty2
這個介面代表堆疊框架屬性、程式檔屬性或其他屬性。 屬性通常是表達式評估的結果。
注意
雖然 可以表示這類實體, IDebugProperty2
但這種使用 「property」 不應與這表示類別的成員變數混淆。
語法
IDebugProperty2 : IUnknown
實作者的注意事項
DE 會實作這個介面來表示特定類型的值。 例如,這個值可能是表達式評估、用於顯示記憶體的記憶體內容,或是緩存器及其值清單的結果。
呼叫端注意事項
呼叫 EvaluateSync 或 EvaluateAsync 以取得這個介面,代表評估的結果。 IDebugExpression2::EvaluateAsync
會將 IDebugExpressionEvaluationCompleteEvent2 介面傳送至 SDM,進而呼叫 GetResult 來擷取屬性,以傳回這個介面。
GetDebugProperty 會傳回這個介面,以提供相關聯的腳本檔。
GetReturnValue 會傳回這個介面來表示函式的傳回值。
GetDebugProperty 會傳回這個介面來代表程序的各種屬性,例如名稱或記憶體內容。
GetDebugProperty 會傳回這個介面來代表堆疊框架的各種屬性,例如局部變數。
依照 Vtable 順序的方法
下表顯示 IDebugProperty2
方法。
方法 | 描述 |
---|---|
GetPropertyInfo | 填入 描述屬性的DEBUG_PROPERTY_INFO 結構。 |
SetValueAsString | 設定字串中屬性的值。 |
SetValueAsReference | 從指定參考的值設定 屬性值。 |
EnumChildren | 列舉屬性的子系。 |
GetParent | 傳回屬性的父代。 |
GetDerivedMostProperty | 傳回屬性,描述屬性最衍生的屬性。 |
GetMemoryBytes | 傳回組成屬性值的記憶體位元組。 |
GetMemoryContext | 傳回屬性值的記憶體內容。 |
GetSize | 傳回屬性值的大小,以位元組為單位。 |
GetReference | 傳回這個屬性值的參考。 |
GetExtendedInfo | 傳回屬性的擴充資訊。 |
備註
屬性,如介面所 IDebugProperty2
代表,可以視為名稱、類型和位址的值。 在更一般情況下,可以 IDebugProperty2
代表具有階層式結構的任何專案,具有父節點和子節點。
例如,屬性通常是暫時性的,只持續到目前的堆疊框架。 另一方面,參考,如 IDebugReference2 介面所代表,只要值保留在記憶體中就會持續。
IDE 可以使用 IDebugProperty2
介面,讓使用者在運行時間流覽和修改屬性。
需求
標頭:msdbg.h
命名空間:Microsoft.VisualStudio.Debugger.Interop
元件:Microsoft.VisualStudio.Debugger.Interop.dll