IDebugProperty2
Diese Schnittstelle stellt eine Stapelframeeigenschaft, eine Programmdokumenteigenschaft oder eine andere Eigenschaft dar. Die Eigenschaft ist in der Regel das Ergebnis einer Ausdrucksauswertung.
Hinweis
Diese Verwendung von "Property" sollte nicht mit der Bedeutung einer Membervariable einer Klasse verwechselt werden, obwohl eine IDebugProperty2
solche Entität darstellen kann.
Syntax
IDebugProperty2 : IUnknown
Hinweise für Implementierer
Die DE implementiert diese Schnittstelle, um eine bestimmte Art von Wert darzustellen. Beispielsweise könnte der Wert ein numerischer Wert als Ergebnis einer Ausdrucksauswertung, eines Speicherkontexts sein, der zum Anzeigen des Arbeitsspeichers verwendet wird, oder eine Liste der Register und deren Werte.
Hinweise für Aufrufer
Rufen Sie EvaluateSync oder EvaluateAsync auf, um diese Schnittstelle abzurufen, die das Ergebnis einer Auswertung darstellt. IDebugExpression2::EvaluateAsync
gibt diese Schnittstelle zurück, indem eine IDebugExpressionEvaluationCompleteEvent2-Schnittstelle an das SDM gesendet wird, die wiederum GetResult aufruft, um die Eigenschaft abzurufen.
GetDebugProperty gibt diese Schnittstelle zurück, um das zugeordnete Skriptdokument bereitzustellen.
GetReturnValue gibt diese Schnittstelle zurück, um den Rückgabewert einer Funktion darzustellen.
GetDebugProperty gibt diese Schnittstelle zurück, um verschiedene Eigenschaften des Programms darzustellen, z. B. einen Namen oder einen Speicherkontext.
GetDebugProperty gibt diese Schnittstelle zurück, um verschiedene Eigenschaften des Stapelframes wie lokale Variablen darzustellen.
Methoden in Vtable-Reihenfolge
In der folgenden Tabelle sind die Methoden von IDebugProperty2
aufgeführt.
Methode | Beschreibung |
---|---|
GetPropertyInfo | Füllt eine DEBUG_PROPERTY_INFO Struktur ein, die eine Eigenschaft beschreibt. |
SetValueAsString | Legt den Wert einer Eigenschaft aus einer Zeichenfolge fest. |
SetValueAsReference | Legt den Wert der Eigenschaft aus dem Wert eines bestimmten Verweises fest. |
EnumChildren | Listet die untergeordneten Elemente einer Eigenschaft auf. |
GetParent | Gibt das übergeordnete Element einer Eigenschaft zurück. |
GetDerivedMostProperty | Gibt die Eigenschaft zurück, die die am häufigsten abgeleitete Eigenschaft einer Eigenschaft beschreibt. |
GetMemoryBytes | Gibt die Speicherbytes zurück, die den Wert einer Eigenschaft erstellen. |
GetMemoryContext | Gibt den Speicherkontext für einen Eigenschaftswert zurück. |
GetSize | Gibt die Größe des Eigenschaftswerts in Bytes zurück. |
GetReference | Gibt einen Verweis auf den Wert dieser Eigenschaft zurück. |
GetExtendedInfo | Gibt die erweiterten Informationen einer Eigenschaft zurück. |
Hinweise
Eine Eigenschaft, wie durch eine IDebugProperty2
Schnittstelle dargestellt, kann als Wert mit einem Namen, einem Typ und einer Adresse betrachtet werden. Allgemeiner ausgedrückt kann ein IDebugProperty2
Element, das über eine hierarchische Struktur verfügt, mit übergeordneten und untergeordneten Knoten darstellen.
Eine Eigenschaft ist in der Regel transitor, die nur so lange dauert, wie z. B. der aktuelle Stapelrahmen. Andererseits dauert ein Verweis, wie durch eine IDebugReference2-Schnittstelle dargestellt, solange der Wert wieder Standard im Arbeitsspeicher ist.
Die IDE kann die IDebugProperty2
Benutzeroberfläche verwenden, um Benutzern das Durchsuchen und Ändern von Eigenschaften zur Laufzeit zu ermöglichen.
Anforderungen
Header: msdbg.h
Namespace: Microsoft.VisualStudio.Debugger.Interop
Assembly: Microsoft.VisualStudio.Debugger.Interop.dll