Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Přehled
Nativní objekty ladicího programu představují různé konstrukty a chování prostředí ladicího programu. Mezi příklady objektů ladicího programu patří následující.
- Sezení
- Vlákna / vlákno
- Procesy / Proces
- Zásobníkové rámce / Zásobníkový rámec
- Místní proměnné
- Moduly / Moduly
- Užitnost
- Stát
- Nastavení
K interakci s objekty ladicího programu můžete použít příkaz dx a LINQ. Další informace naleznete v tématu dx (Zobrazení ladícího modelu objektu) a Použití LINQ s objekty ladicího programu.
Můžete také pracovat s objekty ladicího programu pomocí JavaScriptu. Další informace o tom naleznete v tématu Nativní objekty ladicího programu v rozšíření JavaScript.
Toto téma popisuje, jak můžete vytvořit vlastní vizualizéry NatVis pro zobrazení objektů debuggeru.
Prostředky pro vývoj pro NatVis
Obecné informace o práci s NatVis najdete v těchto zdrojích informací.
Vytváření vlastních zobrazení nativních objektů
Příklad vlastního objektu NatVis
Vytvořte jednoduchou aplikaci jazyka C++, která má instanci třídy CDog.
class CDog
{
public:
CDog(){m_age = 8; m_weight = 30;}
long m_age;
long m_weight;
};
int main()
{
CDog MyDog;
printf_s("%d, %d\n", MyDog.m_age, MyDog.m_weight);
return 0;
}
Vytvořte soubor s názvem Dog.natvis, který obsahuje tento KÓD XML:
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="https://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="CDog">
<DisplayString>{{Age = {m_age} years. Weight = {m_weight} pounds.}}</DisplayString>
</Type>
</AutoVisualizer>
Zkopírujte Dog.natvis do složky Vizualizérů v instalačním adresáři pro nástroje ladění pro Windows. Například:
C:\Program Files\Debugging Tools for Windows (x64)\Vizualizéry
Spusťte program a přerušte v hlavní funkci. Proveďte krok, aby se proměnná MyDog inicializovala. Zobrazte MyDog pomocí ?? a znovu pomocí dx.
0:000> ??MyDog
class CDog
+0x000 m_age : 0n8
+0x004 m_weight : 0n30
0:000> *
0:000> dx -r1 MyDog
.....
MyDog : {Age = 8 years. Weight = 30 pounds.} [Type: CDog]
Viz také
dx (zobrazení výrazu objektového modelu ladicího programu)