IDebugProperty2
Esta interfaz representa una propiedad de marco de pila, una propiedad de documento de programa o alguna otra propiedad. La propiedad suele ser el resultado de una evaluación de expresiones.
Nota:
Este uso de "propiedad" no debe confundirse con eso, lo que significa que una variable miembro de una clase, aunque un IDebugProperty2
puede representar dicha entidad.
Sintaxis
IDebugProperty2 : IUnknown
Notas para los implementadores
El DE implementa esta interfaz para representar un tipo determinado de valor. Por ejemplo, el valor podría ser un valor numérico como resultado de una evaluación de expresiones, un contexto de memoria usado para mostrar memoria o una lista de registros y sus valores.
Notas para autores de la llamada
Llame a EvaluateSync o EvaluateAsync para obtener esta interfaz, que representa el resultado de una evaluación. IDebugExpression2::EvaluateAsync
devuelve esta interfaz mediante el envío de una interfaz IDebugExpressionEvaluationCompleteEvent2 al SDM, que a su vez llama a GetResult para recuperar la propiedad.
GetDebugProperty devuelve esta interfaz para proporcionar el documento de script asociado.
GetReturnValue devuelve esta interfaz para representar el valor devuelto de una función.
GetDebugProperty devuelve esta interfaz para representar varias propiedades del programa, como un nombre o un contexto de memoria.
GetDebugProperty devuelve esta interfaz para representar varias propiedades del marco de pila, como variables locales.
Métodos en orden de Vtable
En la tabla siguiente se muestran los métodos de IDebugProperty2
.
Método | Descripción |
---|---|
GetPropertyInfo | Rellena una estructura DEBUG_PROPERTY_INFO que describe una propiedad . |
SetValueAsString | Establece el valor de una propiedad de una cadena. |
SetValueAsReference | Establece el valor de la propiedad a partir del valor de una referencia determinada. |
EnumChildren | Enumera los elementos secundarios de una propiedad . |
GetParent | Devuelve el elemento primario de una propiedad . |
GetDerivedMostProperty | Devuelve la propiedad que describe la propiedad más derivada de una propiedad. |
GetMemoryBytes | Devuelve los bytes de memoria que componen el valor de una propiedad. |
GetMemoryContext | Devuelve el contexto de memoria de un valor de propiedad. |
GetSize | Devuelve el tamaño, en bytes, del valor de la propiedad. |
GetReference | Devuelve una referencia al valor de esta propiedad. |
GetExtendedInfo | Devuelve la información extendida de una propiedad. |
Comentarios
Una propiedad, como se representa mediante una IDebugProperty2
interfaz, se puede considerar como un valor con un nombre, un tipo y una dirección. En términos más generales, un IDebugProperty2
puede representar cualquier cosa que tenga una estructura jerárquica, con nodos primarios y secundarios.
Una propiedad suele ser transitoria, duradera solo siempre que el marco de pila actual, por ejemplo. Por otro lado, una referencia, como se representa mediante una interfaz IDebugReference2 , dura siempre que el valor permanezca en la memoria.
El IDE puede usar la IDebugProperty2
interfaz para permitir que los usuarios examinen y modifiquen las propiedades en tiempo de ejecución.
Requisitos
Encabezado: msdbg.h
Espacio de nombres: Microsoft.VisualStudio.Debugger.Interop
Ensamblado: Microsoft.VisualStudio.Debugger.Interop.dll