DkmClrAppDomain Klasse

Definition

Dkmclrappdomain stellt eine CLR-App-Domäne innerhalb eines Prozesses dar, der debuggt wird.

public ref class DkmClrAppDomain : Microsoft::VisualStudio::Debugger::DkmDataContainer, IDisposable
[System.Runtime.InteropServices.Guid("337360db-44af-e459-1323-f16ddacf8b79")]
public class DkmClrAppDomain : Microsoft.VisualStudio.Debugger.DkmDataContainer, IDisposable
[<System.Runtime.InteropServices.Guid("337360db-44af-e459-1323-f16ddacf8b79")>]
type DkmClrAppDomain = class
    inherit DkmDataContainer
    interface IDisposable
Public Class DkmClrAppDomain
Inherits DkmDataContainer
Implements IDisposable
Vererbung
Attribute
Implementiert

Eigenschaften

Id

ID der zugrunde liegenden CLR-App-Domäne. Beim Ausführen von wird die APP-Domäne innerhalb eines bestimmten dkmruntimeinstance eindeutig identifiziert.

IsUnloaded

Gibt "true" zurück, wenn ein "entladen"-Ereignis für dieses Objekt ausgelöst wurde (Beispiel: dkmthread:: entladen wird aufgerufen) oder wenn das Objekt geschlossen wurde. Beachten Sie, dass bei der Überprüfung dieses Status, ohne Synchronisierung, der Status "zurückgegeben" möglicherweise nicht mehr genau der Anweisung entspricht, nachdem er gelesen wurde.

(Geerbt von DkmDataContainer)
Name

Name der AppDomain.

Process

Dkmprocess stellt einen Ziel Prozess dar, der debuggt wird. Der Debugger debuggt die Prozesse, sodass dies die grundlegende debugeinheit ist. Ein dkmprocess kann einen System Prozess oder einen virtuellen Prozess, z. b. Minidumps, darstellen.

RuntimeInstance

Stellt eine CLR-Instanz dar, die in einem Ziel Prozess ausgeführt wird.

UniqueId

GUID, die dieses app-Domänen Objekt eindeutig identifiziert.

Methoden

Close()

Schließt eine dkmclrappdomain-Objektinstanz. Hierdurch werden alle Ressourcen freigegeben, die mit diesem Objekt für alle Komponenten verknüpft sind. Dies schließt Ressourcen Computer übergreifend oder verwaltete/native Marshalling-Grenzen ein.

Dkmclrappdomain-Objekte werden automatisch geschlossen, wenn das zugehörige dkmclrruntimeinstance-Objekt geschlossen wird.

Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

Create(Int32, DkmClrRuntimeInstance, String, DkmDataItem)

Diese Methode wird vom Managed Debug-Monitor aufgerufen, um ein dkmclrappdomain-Objekt zu erstellen. Sie wird für den Ereignis Thread als Reaktion auf den Ziel Prozess aufgerufen, der eine AppDomain erstellt. Der Aufrufer ist dafür verantwortlich, das erstellte Objekt zu schließen, nachdem es abgeschlossen wurde.

FindAllClrModuleInstances(Guid)

Alle dkmclrmoduleinstance []-Elemente innerhalb dieser dkmclrappdomain suchen. Wenn kein Element mit dem angegebenen Eingabe Schlüssel vorhanden ist, tritt bei findallclrmoduleinhaltungen ein Fehler auf.

FindClrModuleInstance(Guid)

Suchen Sie in dieser dkmclrappdomain nach einem dkmclrmoduleinstance-Element. Wenn kein Element mit dem angegebenen Eingabe Schlüssel vorhanden ist, kann findclrmoduleinstance nicht ausgeführt werden.

GetClrModuleInstances()

Getclrmoduleinstance listet die dkmclrmoduleinstance-Elemente dieses dkmclrappdomain-Objekts auf.

GetCorObject()

Bietet direkten Zugriff auf das ICorDebugAppDomain-Objekt, das von Ausdrucks auswergratoren oder anderen Komponenten zum Überprüfen der APP-Domäne verwendet werden kann.

Die zurückgegebene Schnittstelle kann nur verwendet werden, um den Ziel Prozess zu überprüfen, und sollte nie verwendet werden, um die Ausführung zu steuern (keine Schritt-und Ausgangspunkte, keine Fortsetzung usw.). Dies wird nicht unterstützt und führt zu undefiniertem Verhalten.

Location-Einschränkung: die API muss von einer Monitor Komponente (Komponentenebene < 100.000) aufgerufen werden.

GetDataItem<T>()

Ruft die Instanz von 't ' ab, die dieser Container Instanz hinzugefügt wurde. Wenn dieser Container kein 't-Zeichen enthält, gibt diese Funktion NULL zurück.

(Geerbt von DkmDataContainer)
GetManagedRuntimeModule()

Die Instanz des verwalteten Lauf Zeit Moduls. (mscorlib.dll).

Location-Einschränkung: die API muss von einer Monitor Komponente (Komponentenebene < 100.000) aufgerufen werden.

Diese API wurde in Visual Studio 12 RTM (dkmapiversion. VS12RTM) eingeführt.

GetMetaDataBytes(String, Guid)

Wird intern zur Unterstützung von dkmclrappdomain. GetMetaDataBytesPtr verwendet. Verwenden Sie aus Leistungsgründen GetMetaDataBytesPtr anstelle dieser Methode.

Location-Einschrä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.

GetMetaDataBytesPtr(String, UInt32)

Einen Zeiger auf die unformatierten metadatenbytes des Manifest-Moduls der angeforderten Assembly, die nicht in den zu debuggenden Prozess geladen wurde. Hinweis: dieser Zeiger Wert wird ungültig, wenn das tatsächliche Modul in den zu debuggenden Prozess lädt oder wenn die APP-Domäne entladen wird.

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

GetProperty(ICorDebugValue, String)

Wertet eine Eigenschaft für den angegebenen ICorDebug-Wert aus. Der Werttyp muss von der dkmclrappdomain geladen werden, für die dieser $Name $ aufgerufen wird.

Location-Einschränkung: Dies muss sich auf der Remote Seite befinden, da ein ICorDebugHandleValue-Element übergeben wird.

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

RaiseCreatedEvent()

Hiermit wird ein appdomaincreated-Ereignis aufgerufen. Komponenten, die die Ereignis Senke-Schnittstelle implementieren, erhalten die Ereignis Benachrichtigung. Das Steuerelement wird zurückgegeben, sobald alle Komponenten benachrichtigt wurden.

Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

Location-Einschränkung: die API muss von einer Monitor Komponente (Komponentenebene < 100.000) aufgerufen werden.

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

RemoveDataItem<T>()

Entfernen Sie die Instanz 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)
ResolveMvidByAssemblyName(String)

Auflösen einer Assembly anhand des Namens und Zurückgeben der MVID des manifestanzmoduls.

Location-Einschrä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)

Fügen Sie ein neues Element in den Datencontainer ein.

(Geerbt von DkmDataContainer)
Unload()

Markieren Sie das Entlade Objekt als entladen, und Benachrichtigen Sie die Komponenten, die die Ereignis senken-Schnittstelle implementieren. Das Steuerelement wird zurückgegeben, sobald alle Komponenten benachrichtigt wurden.

Diese Methode kann nur von der Komponente aufgerufen werden, die das Objekt erstellt hat.

Location-Einschränkung: die API muss von einer Monitor Komponente (Komponentenebene < 100.000) aufgerufen werden.

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

Explizite Schnittstellenimplementierungen

IDisposable.Dispose()

Muss hinzugefügt werden.

Gilt für