DkmClrAppDomain Klasa

Definicja

DkmClrAppDomain reprezentuje domenę aplikacji CLR wewnątrz procesu, który jest debugowany.

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
Dziedziczenie
Atrybuty
Implementuje

Właściwości

Id

Identyfikator źródłowej domeny aplikacji CLR. W trakcie działania, jednoznacznie identyfikuje domenę aplikacji w ramach określonego DkmRuntimeInstance.

IsUnloaded

Zwraca wartość PRAWDA, jeśli zgłoszono zdarzenie "zwolnione" dla tego obiektu (przykład: DkmThread:: Unload jest wywoływana) lub jeśli obiekt został zamknięty. Należy zauważyć, że należy zachować ostrożność podczas sprawdzania tego stanu jako, bez synchronizacji, zwrócony stan może nie być już dokładny po odczytaniu.

(Odziedziczone po DkmDataContainer)
Name

Nazwa elementu AppDomain.

Process

DkmProcess reprezentuje proces docelowy, który jest debugowany. Debuger debuguje procesy, więc jest podstawową jednostką debugowania. DkmProcess może reprezentować proces systemowy lub proces wirtualny, taki jak minizrzutów.

RuntimeInstance

Reprezentuje wystąpienie CLR działające w procesie docelowym.

UniqueId

Identyfikator GUID, który jednoznacznie identyfikuje ten obiekt domeny aplikacji.

Metody

Close()

Zamyka wystąpienie obiektu DkmClrAppDomain. Spowoduje to zwolnienie wszystkich zasobów skojarzonych z tym obiektem we wszystkich składnikach. Obejmuje to zasoby między komputerem lub zarządzanymi/natywnymi granicami kierującymi.

Obiekty DkmClrAppDomain są zamykane automatycznie po zamknięciu skojarzonego obiektu DkmClrRuntimeInstance.

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Create(Int32, DkmClrRuntimeInstance, String, DkmDataItem)

Ta metoda jest wywoływana przez zarządzany Monitor debugowania w celu utworzenia obiektu DkmClrAppDomain. Jest wywoływana w wątku zdarzeń w odpowiedzi na proces docelowy tworzący element AppDomain. Obiekt wywołujący jest odpowiedzialny za zamknięcie utworzonego obiektu po jego zakończeniu.

FindAllClrModuleInstances(Guid)

Znajdź wszystkie elementy DkmClrModuleInstance [] w tym DkmClrAppDomain. Jeśli żaden element z danym kluczem wejściowym nie jest obecny, FindAllClrModuleInstances zakończy się niepowodzeniem.

FindClrModuleInstance(Guid)

Znajdź element DkmClrModuleInstance w tym DkmClrAppDomain. Jeśli żaden element z danym kluczem wejściowym nie jest obecny, FindClrModuleInstance zakończy się niepowodzeniem.

GetClrModuleInstances()

GetClrModuleInstances wylicza elementy DkmClrModuleInstance tego obiektu DkmClrAppDomain.

GetCorObject()

Zapewnia bezpośredni dostęp do obiektu ICorDebugAppDomain, który może być używany przez ocenianie wyrażeń lub inne składniki do sprawdzenia domeny aplikacji.

Zwracany interfejs może być używany tylko do inspekcji procesu docelowego i nigdy nie powinien być używany do kontrolowania wykonywania (bez taktowania, braku punktów przerwania, bez kontynuowania itp.). Wykonanie tej czynności nie jest obsługiwane i spowoduje niezdefiniowane zachowanie.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

GetDataItem<T>()

Pobiera wystąpienie "t", które zostało dodane do tego wystąpienia kontenera. Jeśli ten kontener nie zawiera elementu "t", funkcja ta zwróci wartość null.

(Odziedziczone po DkmDataContainer)
GetManagedRuntimeModule()

Pobierz wystąpienie zarządzanego modułu uruchomieniowego. (mscorlib.dll).

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

GetMetaDataBytes(String, Guid)

Używane wewnętrznie do obsługi DkmClrAppDomain. GetMetaDataBytesPtr. Ze względu na wydajność Użyj GetMetaDataBytesPtr zamiast tej metody.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika IDE (poziom składnika > 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

GetMetaDataBytesPtr(String, UInt32)

Uzyskaj wskaźnik do bajtów metadanych pierwotnych modułu manifestu żądanego zestawu, który nie został załadowany w procesie debugowanego obiektu. Uwaga: Ta wartość wskaźnika stanie się nieprawidłowa, jeśli/gdy rzeczywisty moduł zostanie załadowany w procesie debugowanego obiektu lub jeśli domena aplikacji zostanie zwolniona.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

GetProperty(ICorDebugValue, String)

Oblicza właściwość w danym ICorDebugValue. Typ wartości musi być załadowany przez DkmClrAppDomain, w którym jest wywoływana ta $Name $.

Ograniczenie lokalizacji: Ta wartość musi znajdować się na stronie zdalnej, ponieważ trwa przekazywanie ICorDebugHandleValue.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion. VS15RTM).

RaiseCreatedEvent()

Zgłoś zdarzenie AppDomainCreated. Składniki implementujące interfejs ujścia zdarzeń otrzymają powiadomienie o zdarzeniu. Kontrolka zwróci wynik po powiadomieniu wszystkich składników.

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion. VS16RTM).

RemoveDataItem<T>()

Usuń wystąpienie elementu "t" z tego kontenera. Zwykle nie jest konieczne wywoływanie tej metody, ponieważ kontener danych zostanie automatycznie opróżniony, gdy obiekt zostanie zamknięty.

(Odziedziczone po DkmDataContainer)
ResolveMvidByAssemblyName(String)

Rozpoznać zestaw według nazwy i zwrócić MVID jego modułu manifestu.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika IDE (poziom składnika > 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

SetDataItem<T>(DkmDataCreationDisposition, T)

Umieść nowy element w kontenerze danych.

(Odziedziczone po DkmDataContainer)
Unload()

Oznacz obiekt Unload jako zwolniony i powiadom składniki, które implementują interfejs ujścia zdarzeń. Kontrolka zwróci wynik po powiadomieniu wszystkich składników.

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion. VS16RTM).

Jawne implementacje interfejsu

IDisposable.Dispose()

Do dodania.

Dotyczy