Zobrazení zásobníku volání a použití okna Zásobník volání v ladicím programu
Pomocí okna Zásobník volání můžete zobrazit volání funkce nebo procedury, které jsou aktuálně v zásobníku. Okno Zásobník volání zobrazuje pořadí, ve kterém se volají metody a funkce. Zásobník volání je dobrý způsob, jak prozkoumat a pochopit tok provádění aplikace.
Pokud nejsou symboly ladění dostupné pro část zásobníku volání, okno Zásobník volání nemusí být schopné zobrazit správné informace pro danou část zásobníku volání a místo toho zobrazit:
[Frames below may be incorrect and/or missing, no symbols loaded for name.dll]
Poznámka:
Zobrazené dialogová okna a příkazy nabídek se můžou lišit od zde popsaných v závislosti na aktivním nastavení nebo edici. Pokud chcete změnit nastavení, vyberte v nabídce Nástroje možnost Importovat a exportovat Nastavení. Viz Resetování všech nastavení. Okno Zásobník volání je podobné perspektivě ladění v některých prostředích ID, jako je Eclipse.
Zobrazení zásobníku volání v ladicím programu
Při ladění vyberte v nabídce Ladění zásobník volání systému Windows > nebo stiskněte .ctrl
+alt
+C
Šipka identifikuje rámec zásobníku, ve kterém se právě nachází ukazatel provádění. Ve výchozím nastavení se informace o tomto rámečku zásobníku zobrazují ve zdrojových oknech, Místní hodnoty, Automatické hodnoty, Kukátka a Zpětné překlady. Pokud chcete změnit kontext ladicího programu na jiný rámec v zásobníku, přepněte na jiný rámec zásobníku.
Žlutá šipka identifikuje rámec zásobníku, ve kterém se právě nachází ukazatel provádění. Ve výchozím nastavení se informace o tomto rámečku zásobníku zobrazují ve zdrojových oknech, Místní hodnoty, Automatické hodnoty, Kukátka a Zpětné překlady. Pokud chcete změnit kontext ladicího programu na jiný rámec v zásobníku, přepněte na jiný rámec zásobníku.
Během ladění můžete také zobrazit rámce zásobníku výjimek v zásobníku volání. Další informace naleznete v tématu Zobrazení zásobníku volání v pomocné rutině výjimky.
Zobrazení neuživatelového kódu v okně Zásobník volání
Chcete-li zobrazit externí nebo jiný než uživatelský kód, přepněte přepínač Zobrazit externí kód pravým tlačítkem myši na okno Zásobník volání a vyberte Zobrazit externí kód.
Pokud chcete zobrazit externí nebo jiný než uživatelský kód, přepněte tlačítko Zobrazit externí kód z panelu nástrojů zásobníku volání nebo klikněte pravým tlačítkem myši na okno Zásobník volání a vyberte Zobrazit externí kód.
Kód bez uživatele je jakýkoli kód, který se nezobrazuje, když je povolený pouze můj kód . Ve spravovaném kódu jsou rámce bez uživatelského kódu ve výchozím nastavení skryté. Místo snímků kódu bez uživatele se zobrazí následující notace:
[<External Code>]
Přepnutí na jiný rámec zásobníku (změna kontextu ladicího programu)
V okně Zásobník volání klikněte pravým tlačítkem myši na rámec zásobníku, jehož kód a data chcete zobrazit.
Nebo můžete poklikáním na rámeček v okně Zásobník volání přepnout na tento rámec.
Vyberte Přepnout na rámeček.
Vedle vybraného rámečku zásobníku se zobrazí zelená šipka se složeným ocasem. Ukazatel spuštění zůstane v původním rámečku, který je stále označen žlutou šipkou. Pokud v nabídce Ladění vyberete Krok nebo Pokračovat, provádění bude pokračovat v původním rámečku, nikoli v rámci, který jste vybrali.
Zobrazit všechna související vlákna
Přepnutím tlačítka Zobrazit všechna vlákna zobrazíte všechna související vlákna v okně Paralelní zásobník.
Vyhledávání zásobníku volání
Relevantní rámce zásobníku volání můžete vyhledat zadáním relevantních hledaných termínů do vyhledávacího pole umístěného v levém horním rohu okna zásobníku volání. Zvýrazní se příslušné rámce zásobníku volání.
Zobrazení zdrojového kódu pro funkci v zásobníku volání
V okně Zásobník volání klikněte pravým tlačítkem myši na funkci, jejíž zdrojový kód chcete zobrazit, a vyberte Přejít na zdrojový kód.
Spuštění do konkrétní funkce z okna Zásobník volání
V okně Zásobník volání vyberte funkci, klikněte pravým tlačítkem myši a pak zvolte Spustit do kurzoru.
Nastavení zarážky na výstupním bodu volání funkce
Viz Nastavení zarážky u funkce zásobníku volání.
Zobrazení volání do nebo z jiného vlákna
Klikněte pravým tlačítkem myši na okno Zásobník volání a vyberte Zahrnout volání do/z jiných vláken.
Vizuální trasování zásobníku volání
V sadě Visual Studio Enterprise (pouze) můžete během ladění zobrazit mapy kódu pro zásobník volání.
V okně Zásobník volání otevřete místní nabídku. Zvolte Zobrazit zásobník volání na mapě kódu (Ctrl + Shift). + `
Další informace naleznete v tématu Mapování metod v zásobníku volání při ladění.
Zobrazení kódu zpětného překladu funkce v zásobníku volání (C#, C++, Visual Basic, F#)
V okně Zásobník volání klikněte pravým tlačítkem myši na funkci, jejíž kód zpětného překladu chcete zobrazit, a vyberte Přejít na demontáž.
Změna zobrazených volitelných informací
Klikněte pravým tlačítkem myši v okně Zásobník volání a nastavte nebo zrušte zaškrtnutí políčka Zobrazit <požadované> informace.
Externí kód .NET pro automatické dokončování
Od sady Visual Studio 2022 verze 17.7 můžete kód .NET automaticky zkompilovat poklikáním na externí kód v okně Zásobník volání. Další informace naleznete v tématu Generování zdrojového kódu ze sestavení .NET při ladění.
Načtení symbolů pro modul (C#, C++, Visual Basic, F#)
V okně Zásobník volání můžete načíst symboly ladění pro kód, který aktuálně neobsahuje symboly. Tyto symboly můžou být symboly .NET nebo systémové symboly stažené ze serverů veřejných symbolů Microsoftu nebo symboly v cestě symbolů v počítači, který ladíte.
Viz Zadání symbolu (.pdb) a zdrojových souborů.
Načtení symbolů
V okně Zásobník volání klikněte pravým tlačítkem myši na rámec zásobníku, pro který nejsou načteny symboly. Rámeček bude zašedlý.
Přejděte na příkaz Načíst symboly a pak vyberte Servery symbolů Microsoftu (pokud jsou k dispozici) nebo přejděte na cestu k symbolu.
Nastavení cesty symbolu
V okně Zásobník volání zvolte v místní nabídce symbol Nastavení.
Otevře se dialogové okno Možnosti a zobrazí se stránka Symboly .
Vyberte Nastavení symbolu.
V dialogovém okně Možnosti klikněte na ikonu Složka.
V poli Umístění souboru symbolu (.pdb) se zobrazí kurzor.
Zadejte cestu k adresáři k umístění symbolu v počítači, který ladíte. V případě místního a vzdáleného ladění se jedná o cestu na místním počítači.
Kliknutím na tlačítko OK zavřete dialogové okno Možnosti.