DkmClrAppDomain Třída

Definice

DkmClrAppDomain představuje doménu aplikace CLR uvnitř procesu, který se právě ladí.

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
Dědičnost
Atributy
Implementuje

Vlastnosti

Id

ID podkladové domény aplikace CLR Při spuštění tato aplikace jednoznačně identifikuje doménu aplikace v rámci konkrétní DkmRuntimeInstance.

IsUnloaded

Vrátí hodnotu true, pokud byla pro tento objekt vyvolána událost Unload (příklad: DkmThread:: Unloaded), nebo pokud byl objekt uzavřen. Upozorňujeme, že při kontrole tohoto stavu jako bez synchronizace je nutné použít péči, protože vrácený stav již nemusí být po jeho čtení přesnou instrukci.

(Zděděno od DkmDataContainer)
Name

Název domény AppDomain.

Process

DkmProcess představuje cílový proces, který se právě ladí. Ladicí program ladění procesů, takže se jedná o základní jednotku ladění. DkmProcess může představovat systémový proces nebo virtuální proces, jako je například Mini výpisy.

RuntimeInstance

Představuje instanci CLR spuštěnou v cílovém procesu.

UniqueId

Identifikátor GUID, který jedinečně identifikuje tento objekt domény aplikace

Metody

Close()

Zavře instanci objektu DkmClrAppDomain. Tím dojde k uvolnění všech prostředků přidružených k tomuto objektu napříč všemi komponentami. To zahrnuje prostředky mezi počítačem nebo spravovanými/nativními hranicemi zařazování.

Objekty DkmClrAppDomain se automaticky zavřou, když je jejich přidružený objekt DkmClrRuntimeInstance uzavřený.

Tato metoda může být volána pouze komponentou, která objekt vytvořila.

Create(Int32, DkmClrRuntimeInstance, String, DkmDataItem)

Tato metoda je volána spravovaným monitorováním ladění pro vytvoření objektu DkmClrAppDomain. Je volána ve vlákně události v reakci na cílový proces vytváření domény aplikace. Volající je zodpovědný za uzavření vytvořeného objektu po jeho dokončení.

FindAllClrModuleInstances(Guid)

Najde všechny prvky DkmClrModuleInstance [] v rámci této DkmClrAppDomain. Pokud není k dispozici žádný element se zadaným vstupním klíčem, FindAllClrModuleInstances se nezdaří.

FindClrModuleInstance(Guid)

V této DkmClrAppDomain se nachází element DkmClrModuleInstance. Pokud není k dispozici žádný element se zadaným vstupním klíčem, FindClrModuleInstance se nezdaří.

GetClrModuleInstances()

GetClrModuleInstances vytvoří výčet prvků DkmClrModuleInstance tohoto objektu DkmClrAppDomain.

GetCorObject()

Poskytuje přímý přístup k objektu ICorDebugAppDomain, který vyhodnocovací filtry výrazů nebo jiné komponenty můžou použít ke kontrole domény aplikace.

Vrácené rozhraní lze použít pouze k zkontrolování cílového procesu a neměl by být nikdy použit k řízení provádění (bez krokování, žádné zarážky, žádné pokračování atd.). V takovém případě se nepodporuje a bude mít za následek nedefinované chování.

Omezení umístění: rozhraní API musí být voláno z komponenty monitorování (úroveň komponenty < 100 000).

GetDataItem<T>()

Získá instanci t, která byla přidána do této instance kontejneru. Pokud tento kontejner neobsahuje hodnotu t, vrátí tato funkce hodnotu null.

(Zděděno od DkmDataContainer)
GetManagedRuntimeModule()

Získá instanci modulu spravovaného modulu runtime. (mscorlib.dll).

Omezení umístění: rozhraní API musí být voláno z komponenty monitorování (úroveň komponenty < 100 000).

Toto rozhraní API se zavedlo v aplikaci Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

GetMetaDataBytes(String, Guid)

Interně se používá k podpoře DkmClrAppDomain. GetMetaDataBytesPtr. Z důvodů výkonu použijte GetMetaDataBytesPtr namísto této metody.

Omezení umístění: rozhraní API se musí volat z komponenty IDE (úroveň komponenty > 100 000).

Toto rozhraní API se zavedlo v aplikaci Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

GetMetaDataBytesPtr(String, UInt32)

Získejte ukazatel na nezpracované bajty metadat modulu manifestu v požadovaném sestavení, které nebylo načteno do procesu laděného procesu. Poznámka: Tato hodnota ukazatele se stane neplatnou, pokud/když se skutečný modul načte do procesu laděného procesu nebo pokud je doména aplikace uvolněná.

Toto rozhraní API se zavedlo v aplikaci Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

GetProperty(ICorDebugValue, String)

Vyhodnotí vlastnost na daném ICorDebugValue. Typ hodnoty musí být načten DkmClrAppDomain, na kterém je tato $Name $ volána.

Omezení umístění: Tato akce musí být na vzdálené straně, protože předáváme ICorDebugHandleValue.

Toto rozhraní API se zavedlo v aplikaci Visual Studio 15 RTM (DkmApiVersion. VS15RTM).

RaiseCreatedEvent()

Vyvolat událost AppDomainCreated. Pro součásti, které implementují rozhraní jímky událostí, se zobrazí oznámení události. Řízení vrátí, jakmile budou všechny komponenty upozorněny.

Tato metoda může být volána pouze komponentou, která objekt vytvořila.

Omezení umístění: rozhraní API musí být voláno z komponenty monitorování (úroveň komponenty < 100 000).

Toto rozhraní API se zavedlo v aplikaci Visual Studio 16 RTM (DkmApiVersion. VS16RTM).

RemoveDataItem<T>()

Odebere instanci třídy t z tohoto kontejneru. Obvykle není nutné volat tuto metodu, protože datový kontejner bude automaticky vyprázdněn při zavření objektu.

(Zděděno od DkmDataContainer)
ResolveMvidByAssemblyName(String)

Vyřešte sestavení podle názvu a vraťte identifikátor MVID jeho modulu manifestu.

Omezení umístění: rozhraní API se musí volat z komponenty IDE (úroveň komponenty > 100 000).

Toto rozhraní API se zavedlo v aplikaci Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

SetDataItem<T>(DkmDataCreationDisposition, T)

Umístit novou položku do kontejneru dat.

(Zděděno od DkmDataContainer)
Unload()

Označte uvolněný objekt jako nenačtený a upozorněte komponenty, které implementují rozhraní jímky událostí. Řízení vrátí, jakmile budou všechny komponenty upozorněny.

Tato metoda může být volána pouze komponentou, která objekt vytvořila.

Omezení umístění: rozhraní API musí být voláno z komponenty monitorování (úroveň komponenty < 100 000).

Toto rozhraní API se zavedlo v aplikaci Visual Studio 16 RTM (DkmApiVersion. VS16RTM).

Explicitní implementace rozhraní

IDisposable.Dispose()

Má být přidáno.

Platí pro