IDebugProperty2

此接口表示堆栈框架属性、程序文档属性或其他一些属性。 该属性通常是表达式计算的结果。

注意

不应将这种使用“property”与这意味着类的成员变量混淆,尽管可以 IDebugProperty2 表示此类实体。

语法

IDebugProperty2 : IUnknown

实现者须知

DE 实现此接口来表示特定类型的值。 例如,该值可能是表达式计算的结果、用于显示内存的内存上下文或寄存器列表及其值的结果的数字值。

对调用者的说明

调用 EvaluateSyncEvaluateAsync 以获取此接口,该接口表示评估的结果。 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

另请参阅