Sdílet prostřednictvím


DkmClrValue Třída

Definice

Hodnota vyplývající z kontrolního dotazu CLR. Tyto hodnoty používá formatter výsledků ke generování DkmEvaluationResults.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

public ref class DkmClrValue : Microsoft::VisualStudio::Debugger::DkmDataContainer, IDisposable
[System.Runtime.InteropServices.Guid("8186570c-2529-edb5-ef0b-4e485f902e89")]
public class DkmClrValue : Microsoft.VisualStudio.Debugger.DkmDataContainer, IDisposable
[<System.Runtime.InteropServices.Guid("8186570c-2529-edb5-ef0b-4e485f902e89")>]
type DkmClrValue = class
    inherit DkmDataContainer
    interface IDisposable
Public Class DkmClrValue
Inherits DkmDataContainer
Implements IDisposable
Dědičnost
Dědičnost
DkmClrValue
Atributy
Implementuje

Vlastnosti

Access

Úroveň řízení přístupu (veřejná, soukromá atd.) výsledku vyhodnocení.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Address

[Volitelné] Pokud je výsledkem adresa (tj. příznak adresy je nastavený v části Příznaky), určuje umístění záložní hodnoty. Používá se, když se výsledek vyhodnocení používá jako vstup do okna paměti nebo pro demontáž. Pokud se jedná o instrukční adresu, musí mít nastavenou adresu CPUInstruction.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Alias

[Volitelné] Alias pro tuto hodnotu. Pokud objekt nemá přiřazený alias, bude tato hodnota null.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

ArrayDimensions

[Volitelné] Rozměry pole. Tato hodnota je platná pouze v případě, že DkmClrValue je hodnota pole.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

ArrayLowerBounds

[Volitelné] Dolní hranice pole. Tato hodnota je platná pouze v případě, že DkmClrValue je hodnota pole.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Category

Kategorie (např. Data, Metoda atd.) tohoto výsledku vyhodnocení.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

EvalFlags

Příznaky popisující výsledek vyhodnocení, které vytvořilo tuto hodnotu DkmClrValue.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

HostObjectValue

[Volitelné] Hodnota tohoto uzlu, pokud DkmClrValue je hodnota, která může být reprezentována v procesu ladicího programu. Pokud je hodnota DkmClrValue komplexního typu, bude tato hodnota null. Poznámka pro použití v nativním kódu, když je podkladovou hodnotou řetězec: Pokud toto pole používáte v nativním kódu, může být struktura VARIANT BSTR nebo IUnknown, která by měla být dotazována pro IDkmManagedStringRef. Pokud vytváříte toto pole v nativním kódu, použijte variantu BSTR.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

InspectionSession

InspectionSession umožňuje různým komponentám, které zkoumají data v cílovém procesu, ukládat soukromá data se stejnou životností. Relace kontroly se ukončí, když se uživatel pokusí pokračovat v procesu.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IsNull

True, pokud je hodnota null (nebo pokud neexistuje žádná hodnota).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IsUnloaded

Vrátí hodnotu true, pokud byla pro tento objekt vyvolána událost unloaded (příklad: DkmThread::Unload je volána) nebo pokud byl objekt uzavřen. Mějte na paměti, že při kontrole tohoto stavu je potřeba střídmět, protože bez synchronizace nemusí být vrácený stav po přečtení přesný.

(Zděděno od DkmDataContainer)
Language

Použitý jazyk.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

NativeComPointer

Ukazatel rozhraní na nativní objekt COM, pokud je tato hodnota RCW.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

StackFrame

Rámec zásobníku použitý jako rámec kontroly interpretovaného výrazu.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

StorageType

Typ úložiště (např. statický) výsledku vyhodnocení.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Type

[Volitelné] Typ modulu runtime tohoto uzlu. Například System.String. Tato hodnota je null, pokud je hodnota neplatná A typ nelze určit.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

TypeModifierFlags

Příznaky modifikátoru typu (např. const) výsledku vyhodnocení.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

UniqueId

Identifikátor GUID, který jednoznačně identifikuje tento interpretovaný výsledek.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

ValueFlags

Příznaky popisující tuto hodnotu.

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Metody

Close()

Zavře hodnotu CLR, aby se uvolnily prostředky k ní přidružené. Tuto metodu musí vyvolat objekt, který požadoval zkušební dotaz (např. s názvem DkmCompiledClrInspectionQuery.Execute).

DkmClrValue objekty jsou automaticky uzavřeny při jejich přidružené DkmInspectionSession objekt je uzavřen.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Create(DkmInspectionSession, DkmLanguage, DkmClrType, DkmEvaluationResultCategory, DkmEvaluationResultAccessType, DkmEvaluationResultStorageType, DkmEvaluationResultTypeModifierFlags, Boolean, Object, DkmStackWalkFrame, DkmEvaluationResultFlags, DkmClrValueFlags, UInt64, DkmDataAddress, String, ReadOnlyCollection<Int32>, ReadOnlyCollection<Int32>, DkmDataItem)

Create novou instanci objektu DkmClrValue.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

Dereference(DkmInspectionContext)

Dereference tuto hodnotu ukazatele získat podkladovou hodnotu. Tuto metodu lze použít pouze v případě, že DkmClrValue představuje hodnotu Ukazatele.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

EvaluateDebuggerDisplayString(DkmWorkList, DkmInspectionContext, DkmClrType, String, DkmCompletionRoutine<DkmEvaluateDebuggerDisplayStringAsyncResult>)

Získá řetězec k zobrazení v uživatelském rozhraní ladicího programu pro hodnotu CLR zadanou DebuggerDisplay řetězec atributu.

Tato metoda připojí novou pracovní položku k zadanému pracovnímu seznamu a vrátí se po připojení pracovní položky. Skutečné zpracování pracovní položky je asynchronní. Volající obdrží oznámení o dokončení žádosti prostřednictvím rutiny dokončení.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

EvaluateToString(DkmInspectionContext)

Spusťte přepsání ToString na objekt reprezentovaný danou hodnotou DkmClrValue. Pokud je hodnota objektu typu nebo nepřepíše ToString, vrátí tato metoda hodnotu null. Tato metoda vyžaduje, aby bylo povolené vyhodnocení funkce. Pokud je vyhodnocení funkce zakázáno uživatelem nebo z jakéhokoli jiného důvodu, vrátí tato metoda hodnotu null. Tato metoda vrátí hodnotu null také v případě, že vyhodnocení funkce z nějakého důvodu selže.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetArrayElement(Int32[], DkmInspectionContext)

Získání elementu pole Tuto metodu lze použít pouze v případě, že DkmClrValue představuje hodnotu pole.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetDataItem<T>()

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

(Zděděno od DkmDataContainer)
GetEditableValueString(DkmInspectionContext, DkmClrCustomTypeInfo)

Získejte upravitelný řetězec hodnoty, který se zobrazí v uživatelském rozhraní pro danou hodnotu DkmClrValue.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetMemberValue(String, Int32, String, DkmInspectionContext)

Získá hodnotu pole nebo vlastnost jako DkmClrValue.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetResult(DkmWorkList, DkmClrType, DkmClrCustomTypeInfo, DkmInspectionContext, ReadOnlyCollection<String>, String, String, DkmCompletionRoutine<DkmEvaluationAsyncResult>)

Naformátuje hodnotu DkmClrValue a vrátí hodnotu DkmEvaluationResult.

Tato metoda připojí novou pracovní položku k zadanému pracovnímu seznamu a vrátí se po připojení pracovní položky. Skutečné zpracování pracovní položky je asynchronní. Volající obdrží oznámení o dokončení žádosti prostřednictvím rutiny dokončení.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetUnderlyingString(DkmInspectionContext)

Získá základní řetězcovou reprezentaci hodnoty.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetValueString(DkmClrCustomTypeInfo, DkmInspectionContext, ReadOnlyCollection<String>)

Získejte řetězec hodnoty, který se má zobrazit v uživatelském rozhraní pro danou hodnotu DkmClrValue.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

GetValueString(DkmInspectionContext, ReadOnlyCollection<String>)

Získejte řetězec hodnoty, který se má zobrazit v uživatelském rozhraní pro danou hodnotu DkmClrValue.

Omezení umístění: Rozhraní API se musí volat z komponenty Monitor (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

HasUnderlyingString(DkmInspectionContext)

Určuje, jestli má tato hodnota základní řetězcovou reprezentaci. Pokud tato metoda vrátí hodnotu true, uživatel může k zobrazení této hodnoty v ladicím programu použít vizualizéry řetězců. GetUnderlyingString by měl vrátit základní řetězcovou reprezentaci.

Omezení umístění: Rozhraní API se musí volat z komponenty monitoru (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

InstantiateDynamicViewProxy(DkmInspectionContext)

Vytvořte instanci proxy třídy pro použití pro iteraci dynamických členů hodnoty IDynamicMetaObjectProvider.

Omezení umístění: Rozhraní API se musí volat z komponenty monitoru (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

InstantiateProxyType(DkmInspectionContext, DkmClrType)

Vytvořte instanci třídy proxy pro DkmClrValue s přidruženým atributem DebuggerTypeProxy.

Omezení umístění: Rozhraní API se musí volat z komponenty monitoru (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

InstantiateResultsViewProxy(DkmInspectionContext, DkmClrType)

Vytvořte instanci třídy proxy, která se má použít pro iteraci hodnoty IEnumerable.

Omezení umístění: Rozhraní API se musí volat z komponenty monitoru (úroveň < komponenty 100 000).

Toto rozhraní API bylo zavedeno v sadě Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

RemoveDataItem<T>()

Odeberte z tohoto kontejneru instanci T. Obvykle není nutné volat tuto metodu, protože kontejner dat se při zavření objektu automaticky vyprázdní.

(Zděděno od DkmDataContainer)
SetDataItem<T>(DkmDataCreationDisposition, T)

Do kontejneru dat umístěte novou položku.

(Zděděno od DkmDataContainer)

Explicitní implementace rozhraní

IDisposable.Dispose()

Chcete-li přidat.

Platí pro