Freigeben über


DkmSuccessEvaluationResult Klasse

Definition

Das formatierte Ergebnis einer erfolgreichen Auswertung, das in einem Ausdrucksauswertungsfenster angezeigt werden kann.

public ref class DkmSuccessEvaluationResult : Microsoft::VisualStudio::Debugger::Evaluation::DkmEvaluationResult
[System.Runtime.InteropServices.Guid("5d948996-5805-1795-8b6b-535f0bc32bde")]
public class DkmSuccessEvaluationResult : Microsoft.VisualStudio.Debugger.Evaluation.DkmEvaluationResult
[<System.Runtime.InteropServices.Guid("5d948996-5805-1795-8b6b-535f0bc32bde")>]
type DkmSuccessEvaluationResult = class
    inherit DkmEvaluationResult
Public Class DkmSuccessEvaluationResult
Inherits DkmEvaluationResult
Vererbung
Vererbung
DkmSuccessEvaluationResult
Attribute

Eigenschaften

Access

Die Zugriffssteuerungsebene (öffentlich, privat usw.) des Auswertungsergebnisses.

Address

[Optional] Wenn das Ergebnis eine Adresse ist (d. h. das Adressflag in Flags festgelegt ist), gibt die Position des Sicherungswerts an. Dies wird verwendet, wenn das Auswertungsergebnis als Eingabe für das Speicher- oder Disassemblierungsfenster verwendet wird. Wenn es sich um eine Anweisungsadresse handelt, muss die CPUInstruction-Adresse festgelegt sein.

Category

Die Kategorie (z. B. Daten, Methode usw.) dieses Auswertungsergebnisses.

CustomUIVisualizers

[Optional] Eine Liste von benutzerdefinierten Viewern für dieses Objekt.

EditableValue

[Optional] Wenn der Wert beschreibbar ist, gibt die Standardzeichenfolge an, die verwendet werden soll, wenn Sie auf den Wert doppelklicken, um ihn zu bearbeiten. Das EE sollte in der Lage sein, diese Zeichenfolge zu analysieren und auszuwerten und das aktuelle Auswertungsergebnis zurückzuholen. Wenn der Wert schreibgeschützt ist, wird der bearbeitbare Wert ignoriert und sollte NULL sein.

ExternalModules

[Optional] Falls verfügbar, eine Liste der externen Module ohne das aktuelle Modul, die für die Überprüfung des Objekts verwendet werden. Das Laden von Symbolen für möglichst viele Module in dieser Liste verbessert die Anzeige des Objekts.

Flags

Flags, die Attribute eines Ausdrucksauswertungsergebnisses angeben.

FullName

[Optional] Der vollständige Name des Ausdrucks, für den dieses Ergebnis gilt. Dieser Wert wird verwendet, um das Hinzufügen untergeordneter Elemente zum watch-Fensters (Hinzufügen von Watch aus dem Kontextmenü) und zum Aktualisieren von Teilen der Auswertungsstruktur zu ermöglichen. Als Beispiel dafür, wie Sich FullName vom Namen unterscheidet, lautet der Name des 0. Elements eines Arrays in C++ "[0]", während der vollständige Name durch "myArrayVariable[0]" lautet. Für Visual Studio 14 und höher ist es möglich, den vollständigen Namen später bei Bedarf zu berechnen. Dazu sollte der Ausdrucksauswerter das DkmEvaluationResult mit einem vollständigen Null-Namen erstellen und IDkmFullNameProvider implementieren. Concord ruft dann IDkmFullNameProvider.CalculateFullName auf, um den vollständigen Namen bei Bedarf auf der Benutzeroberfläche abzurufen.

(Geerbt von DkmEvaluationResult)
InspectionContext

Überprüfungskontext, der zum Erstellen dieses Auswertungsergebnisses verwendet wird.

(Geerbt von DkmEvaluationResult)
InspectionSession

Die InspectionSession ermöglicht es den verschiedenen Komponenten, die Daten im Zielprozess untersuchen, private Daten mit derselben Lebensdauer zu speichern. Überprüfungssitzungen werden geschlossen, wenn der Benutzer versucht, den Prozess fortzusetzen.

(Geerbt von DkmEvaluationResult)
IsUnloaded

Gibt true zurück, wenn ein "entladenes" Ereignis für dieses Objekt ausgelöst wurde (Beispiel: DkmThread::Unload wird aufgerufen) oder wenn das Objekt geschlossen wurde. Beachten Sie, dass beim Überprüfen dieser status sorgfältig darauf geachtet werden muss, dass die zurückgegebene status nach dem Lesen möglicherweise nicht mehr korrekt ist.

(Geerbt von DkmDataContainer)
Language

Sprache, die für die Durchführung von Inspektionen verwendet wird.

(Geerbt von DkmEvaluationResult)
Name

Der Name des Ausdrucks, für den dieses Ergebnis gilt.

(Geerbt von DkmEvaluationResult)
RefreshButtonText

[Optional] Wenn DkmEvaluationResultFlags::CanEvaluateNow festgelegt ist, gibt den Text an, der als QuickInfo angezeigt werden soll, wenn der Benutzer über die Aktualisierungsschaltfläche bewegt. Wenn dieser Wert NULL ist, wird eine Standardmeldung verwendet.

Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt.

RuntimeInstance

Gibt an, welcher Laufzeitmonitor für diese Auswertung verwendet wird.

(Geerbt von DkmEvaluationResult)
StackFrame

Der Stapelrahmen, für den dieses Ausdrucksergebnis erstellt wurde.

(Geerbt von DkmEvaluationResult)
StorageType

Der Speichertyp (z. B. statisch) des Auswertungsergebnisses.

TagValue

DkmEvaluationResult ist eine abstrakte Basisklasse. Diese Aufzählung gibt an, welche abgeleitete Klasse dieses Objekt instance ist.

(Geerbt von DkmEvaluationResult)
Type

[Optional] Eine Zeichenfolge, die den Typ des Werts beschreibt.

TypeModifierFlags

Typmodifiziererflags (z. B. const) des Auswertungsergebnisses.

UniqueId

Guid, die dieses Auswertungsergebnis eindeutig identifiziert.

(Geerbt von DkmEvaluationResult)
Value

[Optional] Zeichenfolge, die den Wert beschreibt.

Methoden

AddToFavorites(DkmSuccessEvaluationResult)

Fügt das angegebene untergeordnete Element der Auflistung der Favoritenelemente für den Typ dieses Ergebnisses hinzu.

Standorteinschränkung: Die API muss von einer IDE-Komponente aufgerufen werden (Komponentenebene > 100.000).

Diese API wurde in Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4) eingeführt.

Close()

Schließt das Auswertungsergebnisobjekt, um die zugeordneten Ressourcen freizugeben. Diese Methode muss von der Komponente aufgerufen werden, die die Enumeration initiiert hat (z. B. DkmInspectionContext.EvaluateExpression, DkmEvaluationResultEnumContext.GetItems usw.).

DkmEvaluationResult-Objekte werden automatisch geschlossen, wenn ihr zugeordnetes DkmInspectionSession-Objekt geschlossen wird.

(Geerbt von DkmEvaluationResult)
Create(DkmInspectionContext, DkmStackWalkFrame, String, String, DkmEvaluationResultFlags, String, String, String, DkmEvaluationResultCategory, DkmEvaluationResultAccessType, DkmEvaluationResultStorageType, DkmEvaluationResultTypeModifierFlags, DkmDataAddress, ReadOnlyCollection<DkmCustomUIVisualizerInfo>, ReadOnlyCollection<DkmModuleInstance>, DkmDataItem)

Create ein neues DkmSuccessEvaluationResult-Objekt instance.

Create(DkmInspectionContext, DkmStackWalkFrame, String, String, DkmEvaluationResultFlags, String, String, String, DkmEvaluationResultCategory, DkmEvaluationResultAccessType, DkmEvaluationResultStorageType, DkmEvaluationResultTypeModifierFlags, DkmDataAddress, ReadOnlyCollection<DkmCustomUIVisualizerInfo>, ReadOnlyCollection<DkmModuleInstance>, String, DkmDataItem)

Create ein neues DkmSuccessEvaluationResult-Objekt instance.

Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt.

CreateDebuggeeSideVisualizerObject(DkmWorkList, UInt32, DkmCompletionRoutine<DkmCreateDebuggeeSideVisualizerObjectAsyncResult>)

Instanziiert den debuggeeseitigen benutzerdefinierten Visualizer-Typ im Debuggee-Prozess.

Diese Methode fügt ein neues Arbeitselement an die angegebene Arbeitsliste an und gibt zurück, nachdem das Arbeitselement angefügt wurde. Die tatsächliche Verarbeitung des Arbeitselements erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Vervollständigungsroutine abgeschlossen ist.

Standorteinschränkung: Die API muss von einer IDE-Komponente aufgerufen werden (Komponentenebene > 100.000).

Diese API wurde in Visual Studio 16 Update 10 (DkmApiVersion.VS16Update10) eingeführt.

CreateDebuggeeSideVisualizerObject(DkmWorkList, UInt32, Int32, DkmCompletionRoutine<DkmCreateDebuggeeSideVisualizerObject176AsyncResult>)

Instanziiert den debuggeeseitigen benutzerdefinierten Visualizer-Typ im Debuggeee-Prozess und gibt den Typ der Serialisierung an, der bei der Kommunikation mit der Datei verwendet werden soll.

Diese Methode fügt ein neues Arbeitselement an die angegebene Arbeitsliste an und gibt zurück, nachdem das Arbeitselement angefügt wurde. Die tatsächliche Verarbeitung des Arbeitselements erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Vervollständigungsroutine abgeschlossen ist.

Standorteinschränkung: Die API muss von einer IDE-Komponente aufgerufen werden (Komponentenebene > 100.000).

Diese API wurde in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) eingeführt.

CreateDebuggeeSideVisualizerObject(UInt32, Int32, Int32, String, String, String, Boolean)

Instanziiert den debuggeeseitigen benutzerdefinierten Visualizer-Typ im Debuggeee-Prozess und gibt den Typ der Serialisierung an, der bei der Kommunikation mit der Datei verwendet werden soll.

Standorteinschränkung: Die API muss von einer IDE-Komponente aufgerufen werden (Komponentenebene > 100.000).

Diese API wurde in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) eingeführt.

CreateDebuggeeSideVisualizerObject(UInt32, String, String, String)

Instanziiert den debuggeeseitigen benutzerdefinierten Visualizer-Typ im Debuggee-Prozess. Hinweis: Diese Methode wurde zugunsten der in der IDkmClrCustomVisualizerObjectProvider1610-Schnittstelle definierten Methode veraltet.

Standorteinschränkung: Die API muss von einer IDE-Komponente aufgerufen werden (Komponentenebene > 100.000).

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

CreateDebuggeeSideVisualizerObject(UInt32, String, String, String, Boolean)

Instanziiert den debuggeeseitigen benutzerdefinierten Visualizer-Typ im Debuggee-Prozess.

Standorteinschränkung: Die API muss von einer IDE-Komponente aufgerufen werden (Komponentenebene > 100.000).

Diese API wurde in Visual Studio 16 Update 10 (DkmApiVersion.VS16Update10) eingeführt.

CreateObjectId()

Erstellt eine Objekt-ID für diesen bestimmten Ausdruck.

Standorteinschränkung: IDE-Komponenten können diese Methode aufrufen, unabhängig davon, welcher Codetyp gedebuggt wird. Diese Methode wird derzeit auch für Debugmonitorkomponenten beim Debuggen von Code unterstützt, der unter der CLR ausgeführt wird. diese Funktionalität kann jedoch in einer zukünftigen Version entfernt werden.

(Geerbt von DkmEvaluationResult)
CreateReplacementObjectOnDebuggeeSideVisualizer(Byte[], String, String, String)

Führt die CreateReplacementObject(...)-Methode des debuggeeseitigen benutzerdefinierten Visualizer-Typs aus und schreibt das Ergebnis in das visualisierte Objekthandle.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

DestroyDebuggeeSideVisualizerObject()

Gibt den debuggee-side Custom Visualizer-Typ im debuggeee-Prozess frei.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

DestroyDebuggeeSideVisualizerObject(DkmWorkList, DkmCompletionRoutine<DkmDestroyDebuggeeSideVisualizerObjectAsyncResult>)

Gibt den debuggee-side Custom Visualizer-Typ im debuggeee-Prozess frei.

Diese Methode fügt ein neues Arbeitselement an die angegebene Arbeitsliste an und gibt zurück, sobald das Arbeitselement angefügt wurde. Die tatsächliche Verarbeitung des Arbeitselements erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Vervollständigungsroutine abgeschlossen ist.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

DestroyObjectId()

Zerstört eine Objekt-ID für diesen bestimmten Ausdruck.

Standorteinschränkung: IDE-Komponenten können diese Methode aufrufen, unabhängig davon, welcher Codetyp gedebuggt wird. Diese Methode wird derzeit auch für Debugmonitorkomponenten beim Debuggen von Code unterstützt, der unter der CLR ausgeführt wird. diese Funktionalität kann jedoch in einer zukünftigen Version entfernt werden.

(Geerbt von DkmEvaluationResult)
ExtractFromProperty(IDebugProperty3)

Ruft das DkmSuccessEvaluationResult-Objekt ab, das das IDebugProperty3-Objekt zurückgibt. Diese API funktioniert nur über den Standard Thread von Visual Studio ordnungsgemäß.

GetChildren(DkmWorkList, Int32, DkmInspectionContext, DkmCompletionRoutine<DkmGetChildrenAsyncResult>)

Ruft einen Enumerationskontext ab, der zum Abrufen der untergeordneten Elemente dieses Auswertungsergebnisses verwendet wird. Dies wird in allen Ausdrucksauswertungsfenstern verwendet.

Diese Methode fügt ein neues Arbeitselement an die angegebene Arbeitsliste an und gibt zurück, nachdem das Arbeitselement angefügt wurde. Die tatsächliche Verarbeitung des Arbeitselements erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Vervollständigungsroutine abgeschlossen ist.

Standorteinschränkung: IDE-Komponenten können diese Methode aufrufen, unabhängig davon, welcher Codetyp gedebuggt wird. Diese Methode wird derzeit auch für Debugmonitorkomponenten beim Debuggen von Code unterstützt, der unter der CLR ausgeführt wird. diese Funktionalität kann jedoch in einer zukünftigen Version entfernt werden.

(Geerbt von DkmEvaluationResult)
GetClrValue()

Ruft den zugrunde liegenden DkmClrValue aus einem DkmSuccessEvaluationResult ab, sofern vorhanden.

Standorteinschränkung: Die API muss von einer Monitor-Komponente (Komponentenebene < 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

GetDataBreakpointDisplayName()

Ruft den Anzeigenamen des Datenhaltepunkts für das Auswertungsergebnis ab.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt.

GetDataBreakpointDisplayName(DkmWorkList, DkmCompletionRoutine<DkmGetDataBreakpointDisplayNameAsyncResult>)

Ruft den Anzeigenamen des Datenhaltepunkts für das Auswertungsergebnis ab.

Diese Methode fügt ein neues Arbeitselement an die angegebene Arbeitsliste an und gibt zurück, sobald das Arbeitselement angefügt wurde. Die tatsächliche Verarbeitung des Arbeitselements erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Vervollständigungsroutine abgeschlossen ist.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt.

GetDataBreakpointInfo(DkmWorkList, DkmCompletionRoutine<DkmGetDataBreakpointInfoAsyncResult>)

Gibt die Datenhaltepunktinformationen im Zusammenhang mit dem Auswertungsergebnis zurück, sofern gültig.

Diese Methode fügt ein neues Arbeitselement an die angegebene Arbeitsliste an und gibt zurück, sobald das Arbeitselement angefügt wurde. Die tatsächliche Verarbeitung des Arbeitselements erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Vervollständigungsroutine abgeschlossen ist.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt.

GetDataBreakpointInfo(String)

Gibt die Datenhaltepunktinformationen im Zusammenhang mit dem Auswertungsergebnis zurück, sofern gültig.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt.

GetDataFromDebuggeeSideVisualizer(DkmWorkList, DkmCompletionRoutine<DkmGetDataFromDebuggeeSideVisualizerAsyncResult>)

Führt die getData(...)-Methode des debuggeee-side Custom Visualizer-Typs aus.

Diese Methode fügt ein neues Arbeitselement an die angegebene Arbeitsliste an und gibt zurück, sobald das Arbeitselement angefügt wurde. Die tatsächliche Verarbeitung des Arbeitselements erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Vervollständigungsroutine abgeschlossen ist.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

GetDataFromDebuggeeSideVisualizer(String, String, String)

Führt die getData(...)-Methode des debuggeee-side Custom Visualizer-Typs aus.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

GetDataItem<T>()

Ruft den instance von "T" ab, der diesem Container instance hinzugefügt wurde. Wenn dieser Container kein "T" enthält, gibt diese Funktion NULL zurück.

(Geerbt von DkmDataContainer)
GetUnderlyingString()

Diese Methode wird für Auswertungsergebnisse verwendet, die DkmEvaluationResultFlags.RawString enthalten, um die zugrunde liegende Zeichenfolge ohne eingeschlossene Anführungszeichen oder Escapesequenzen abzurufen. Diese Methode wird aufgerufen, um eine der verschiedenen Zeichenfolgenvisualisierer in einem Ausdrucksauswertungsfenster anzuzeigen (klicken Sie auf das Lupensymbol).

Standorteinschränkung: IDE-Komponenten können diese Methode aufrufen, unabhängig davon, welcher Codetyp gedebuggt wird. Diese Methode wird derzeit auch für Debugmonitorkomponenten beim Debuggen von Code unterstützt, der unter der CLR ausgeführt wird. diese Funktionalität kann jedoch in einer zukünftigen Version entfernt werden.

(Geerbt von DkmEvaluationResult)
RemoveDataItem<T>()

Entfernen Sie den instance von "T" aus diesem Container. Es ist in der Regel nicht erforderlich, diese Methode aufzurufen, da ein Datencontainer automatisch geleert wird, wenn das Objekt geschlossen wird.

(Geerbt von DkmDataContainer)
RemoveFromFavorites(DkmSuccessEvaluationResult)

Entfernt das angegebene untergeordnete Element aus der Auflistung der favoriten Elemente für den Typ dieses Ergebnisses.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4) eingeführt.

ResolveAssembly(String, String, ReadOnlyCollection<Byte>)

Löst einen Assemblynamen in den Pfad der Assembly oder in die unformatierten Bytes auf.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

SetDataItem<T>(DkmDataCreationDisposition, T)

Platzieren Sie ein neues Element im Datencontainer.

(Geerbt von DkmDataContainer)
SetValueAsString(String, Int32, String)

Ändert den Wert des angegebenen Auswertungsergebnisses (angenommen, dass es nicht schreibgeschützt ist) so, dass er der angegebenen Zeichenfolge entspricht. Dies wird verwendet, nachdem der Benutzer einen Wert in einem der Auswertungsfenster bearbeitet hat.

Standorteinschränkung: IDE-Komponenten können diese Methode aufrufen, unabhängig davon, welcher Codetyp gedebuggt wird. Diese Methode wird derzeit auch für Debugmonitorkomponenten beim Debuggen von Code unterstützt, der unter der CLR ausgeführt wird. diese Funktionalität kann jedoch in einer zukünftigen Version entfernt werden.

(Geerbt von DkmEvaluationResult)
TransferDataToDebuggeeSideVisualizer(Byte[], String, String, String)

Führt die TransferData(...)-Methode des debuggee-side Custom Visualizer-Typs aus.

Standorteinschränkung: Die API muss von einer IDE-Komponente (Komponentenebene > 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt.

Explizite Schnittstellenimplementierungen

IDisposable.Dispose()

Das formatierte Ergebnis einer erfolgreichen Auswertung, das in einem Ausdrucksauswertungsfenster angezeigt werden kann.

(Geerbt von DkmEvaluationResult)

Gilt für: