Sdílet prostřednictvím


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

Screenshot showing the Call Stack Window. Š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.

Screenshot showing the Call Stack Window.

Ž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)

  1. 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.

  2. 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.

Přepnutím tlačítka Zobrazit všechna vlákna zobrazíte všechna související vlákna v okně Paralelní zásobník.

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í.

Show Call Stack on Code Map

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ů

  1. 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ý.

  2. 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

  1. 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 .

  2. Vyberte Nastavení symbolu.

  3. V dialogovém okně Možnosti klikněte na ikonu Složka.

    V poli Umístění souboru symbolu (.pdb) se zobrazí kurzor.

  4. 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.

  5. Kliknutím na tlačítko OK zavřete dialogové okno Možnosti.