Sdílet prostřednictvím


Zarážky: Použití počtu volání, funkcí zásobníku volání a podmínek k libovolnému přerušení v ladicím programu sady Visual Studio

Umožňuje nastavit zarážky pro řádky zdroje, pokyny sestavení a volání funkce zásobníku.Zadejte podmínky, počtu položek a provádění umístění.Tisk s tracepoints.Uložit a importovat zarážky.

Obsah

Vytvořit zarážek, které přerušit, pokud chcete, aby

Nastavení zarážky na řádku zdrojového pokyn sestavení nebo volání funkce zásobníku

Přístup k pokročilých funkcí aplikace zarážky

Zadat v případě, že zarážky dělí podle počet přístupů, vyhodnocení výrazu provádění umístění nebo změnit data

Tisk do v okně výstupu se tracepoints

Spravovat zarážky v okně zarážky

Poradce při potížích s zarážky

Odkaz na glyfy zarážky

Vytvořit zarážek, které přerušit, pokud chcete, aby

Standardní zarážky, které přerušit provádění ladicí program pokaždé, když je vstupů do umístění zdrojového souboru, jsou jedním z nejdůležitějších techniky ladění v panelu nástrojů developer.Visual Studio vám umožňuje přejít nad rámec standardní zarážky, chcete-li vytvořit jemně odstupňovanou kontrolu nad kdy a kde provede zarážky.

  • Můžete nastavit zarážky běhu, které zastavení provádění v případě, že váš program vrací na funkci při volání zásobníku a vyhnout se dlouhé řadu Krok ven příkazy.

  • Pokud se domníváte, že smyčku ve vašem kódu začne chovají po počet iterací, můžete nastavit zarážky k zastavení vykonávání po zadaný počet přístupů k související řádek kódu a vynucené opakovaně stiskněte klávesu F5 (ladění, Pokračovat) k dosažení úrovně iterace.

  • S použitím pomocí výrazů kódu, můžete určit přesné podmínky, v jakém dělí zarážky.

Můžete použít zarážky okna pro správu stavu a chování velký počet zarážky.Pokud jste si pečlivě zkonstruován posloupnost zarážky společné nebo obzvláště složité problém diagnostikovat, můžete uložit nebo sdílet tyto zarážky pomocí zarážky okno import a export příkazy.

Poznámka k upozorněníUpozornění

Vyhněte se nastavení zarážky na systémových součástech při ladění kódu smíšeném režimu (nativní a spravované).Nastavení zarážky na systémové součásti během smíšeném režimu ladění, může způsobit common language runtime k rozdělení a ladicí program přestane reagovat.

Nastavení zarážky na řádku zdrojového pokyn sestavení nebo volání funkce zásobníku

  • Nastavení zarážky ve zdrojovém souboru • Nastavení zarážky na funkci návratový v okně zásobník volání • Nastavení zarážky na instrukce sestavení v okně zpětný překlad

Nastavení zarážky do zdrojového souboru

Zde jsou dva techniky pro nastavení standardní zarážky v okně zdroje:

  • Klikněte dvakrát na okraji okna na řádku, který chcete ukončit u.

    -nebo-

  • Vyberte řádek a zvolte možnost F9.

Zarážky v okně zásobník volání

Zarážky ikona bude zobrazena v oddělovací mezery.

Vizuálně trasování zarážky během provádění kódu, naleznete v článku Mapování metod v zásobníku volání při ladění v sadě Visual Studio.

Zpět na začátekNastavení zarážky na řádku zdrojového pokyn sestavení nebo volání funkce zásobníku

Nastavení zarážky na funkce return v okně zásobník volání

Je možné zrušit provádění na pokyn nebo na řádek, který je volání funkce vrátí nastavením zarážky v zásobník volání okna.Ladicí program musí být v režimu přerušení.

  • Otevřít zásobník volání okna (Klávesová zkratka: Ctrl + Alt + C) a vyberte možnost volání funkce ukončit u.

  • Zvolte zarážky, Vložit zarážky v místní nabídce, nebo jen použijte klávesovou zkratku: F9.

Symbol zarážka se zobrazí v levému okraji vedle názvu volání funkce.

Zarážky v okně zásobník volání

Otevřete-li zarážky okna (Klávesová zkratka: kombinaci kláves Ctrl + Alt + B) zarážka se zobrazí jako zarážky adresu s umístění paměti, která odpovídá další spustitelného souboru instrukcí ve funkci.Ladicí program dělí provádění u instrukce.

Zarážky zásobníku volání v okně zarážky

Vizuálně trasování zarážky během provádění kódu, naleznete v článku Mapování metod v zásobníku volání při ladění v sadě Visual Studio.

Nastavení zarážky na instrukce sestavení v okně zpětný překlad

Chcete-li nastavit zarážky na instrukce sestavení, musí být ladicí program v režimu přerušení.

  1. Otevřít zpětný překlad okna (Klávesová zkratka: Ctrl + Alt + D).

  2. Proveďte jednu z těchto akcí:

    1. Klikněte dvakrát na okraji okna na řádku, který chcete ukončit u.

      -nebo-

    2. Vyberte řádek a zvolte možnost F9.

Zpět na začátekNastavení zarážky na řádku zdrojového pokyn sestavení nebo volání funkce zásobníku

Přístup k pokročilých funkcí aplikace zarážky

Zarážky kontextové nabídky

V okně zdroje zásobník volání okna, nebo na Disasssembly okna, otevřete místní nabídku pro zarážky a zvolte možnost Vlastnosti.

V okně zarážky vyberte řádek zarážky a otevřete místní nabídku.Můžete také nastavit některé podmínky přímo ve sloupci podmínka.

Zadat v případě, že zarážky dělí podle počet přístupů, vyhodnocení výrazu provádění umístění nebo změnit data

  • Zadejte nalezený počet, na kterém zarážky provede • určíte podmínku zarážky pomocí kódu výrazu • Určete zařízení, procesy nebo vlákna, k jejichž zarážky spouští na • Nastavení zarážky změnu dat (pouze nativní C++)

Zadat počet přístupů jakou provede zarážky

Objekt Počet volání si udržuje přehled o kolikrát je zasažení zarážky.Nastavit hodnotu a podmínku tak, aby zarážky provede, když se počet přístupů se rovná hodnotě, násobkem zadaná hodnota se rovná nebo je větší než nebo rovna hodnotě.Chcete-li určit počet přístupů a podmínky:

  1. Otevřít zarážky počet vstupů do dialogového okna.

    1. Ve zdroji zpětný překlad, nebo zásobník volání , vyberte řádek, který obsahuje zarážky a pak zvolte zarážky, počet vstupů do v místní nabídce.

      -nebo-

    2. V zarážky okna, vyberte řádek zarážky a poté zvolte možnost počet vstupů do v místní nabídce.

      Dialogové okno počet vstupů do zarážky

  2. Vyberte podmínku a zadejte počet přístupů.

Počet, který podmínky jsou užitečné, pokud chcete rozdělit smyčku na určitý počet iterací volání.Pokud chcete zjistit počet pokusů, které je zasažení zarážky můžete také určit velmi velké množství, ale nechcete přerušit provádění.

Zadaný počet přístupů je uchována pouze pro relaci ladění.Když ladicí relaci skončí, počet přístupů je resetováno na nulu.

Zpět na začátekZadat v případě, že zarážky dělí podle počet přístupů, vyhodnocení výrazu provádění umístění nebo změnit data

Zadat podmínku zarážky pomocí kódu výrazu

Objekt zarážky podmínku je výraz, který je vyhodnocován ladicí program, pokud není dosaženo zarážky.Pokud je splněna podmínka, ladicí program dělí provádění.

Podmínka může být libovolný platný výraz, který je rozpoznán ladicí program.V programu banka, například můžete nastavit zarážky podmínku jako například balance < 0.Další informace o platný výrazech naleznete v části výrazy v ladicí program.

Určíte podmínku, zarážky

  1. Otevřete místní nabídku pro zarážky a zvolte stavu.

  2. V zarážky podmínku dialogové okno Zadejte platný výraz v stavu pole.

  3. Zvolte platí Pokud byste chtěli rozdělit při výraz je splněna, nebo zvolte možnost došlo ke změně Pokud byste chtěli přerušit při změně hodnoty výrazu.

Ladicí program se vyhodnotí výraz až po prvním je dosaženo zarážky.Pokud se rozhodnete došlo ke změně pro nativního kódu, ladicí program nezahrne první vyhodnocení stavu na změnu, aby zarážky nebude zasáhnout na první hodnocení.Pokud se rozhodnete došlo ke změně pro spravovaný kód je he zarážky zasáhnout na první hodnocení po došlo ke změně je vybrána.

Pokud nastavíte zarážky podmínku s neplatnou syntaxi, zobrazí se ihned upozornění.Pokud určíte podmínku, zarážky s platnou syntaxi, ale neplatný sémantiku, upozornění se zobrazí po prvním je zasažení zarážky.V obou případech ladicí program dělí provádění, když je neplatný zarážky přístupů.Zarážky přeskočen pouze v případě, že podmínka je platná a vyhodnotí na hodnotu false.

Zpět na začátekZadat v případě, že zarážky dělí podle počet přístupů, vyhodnocení výrazu provádění umístění nebo změnit data

Určete zařízení, procesy nebo vlákna, k jejichž zarážky spouští na

  1. Otevřete místní nabídku pro zarážky a zvolte filtru.

    Dialogové okno Filtr zarážky

  2. Zadejte kritéria filtru podle pokynů dialogového okna.

Zpět na začátekZadat v případě, že zarážky dělí podle počet přístupů, vyhodnocení výrazu provádění umístění nebo změnit data

Nastavení zarážky změnu dat (pouze nativní C++)

Data zarážky přerušit provádění při zápisu hodnotu, která je uložena v určeném místě určenou paměť.Pokud je hodnota pro čtení, ale nebyl zapsán, nedojde k narušení provádění.Chcete-li nastavit zarážky dat, musí být ladicí program v režimu přerušení.

  1. Na ladění nabídce zvolte nové zarážky, nové zarážky dat.

    -nebo-

    V zarážky nabídky okna, zvolte Nový, nové zarážky dat.

  2. V Adresa zadejte adresu paměti nebo výraz, který je vyhodnocován na adresu paměti.

    Můžete například zadat &avar o přerušení při obsahu proměnné avar změnit.

  3. V počet bajtů zadejte počet bajtů, které chcete, aby ladicí program ke sledování.

    Pokud zadáte například 4, ladicí program bude sledovat čtyři bajty počínaje &myFunction a přerušit, pokud žádné z těchto bajtů změňte hodnotu.

Chcete-li nastavit zarážky dat, musí být ladicí program v režimu přerušení.

Zarážky dat nejsou k dispozici v těchto podmínkách:

  • Je-li proces, který není právě laděn zapisuje do umístění v paměti

  • Je-li umístění v paměti jsou sdílena mezi dvě nebo více procesy.

  • Pokud dojde k aktualizaci umístění v paměti v rámci jádra.Například pokud paměti je předaný funkci 32bitová verze systému Windows ReadFile, paměť bude aktualizován z režimu jádra a ladicí program nedojde k narušení při zápisu paměti.

Adresy proměnných měnit z jednoho ladicí relaci na další.Z tohoto důvodu jsou automaticky zakázána zarážky dat na konci každé relaci ladění.

Pokud nastavíte zarážky data na místní proměnné, zůstane zarážky dat povolen, kdy končí funkce.Nicméně adresu paměti, kterou je nastaveno na již nemá stejný význam.Proto nepředvídatelné výsledky takové zarážky.Pokud nastavíte zarážky data na místní proměnné, nejlepší je a odeberte nebo zakažte zarážky před ukončením funkce.

Visual Studio podporuje maximálně čtyři zarážky dat za řešení.

Zpět na začátekZadat v případě, že zarážky dělí podle počet přístupů, vyhodnocení výrazu provádění umístění nebo změnit data

Tisk do v okně výstupu se tracepoints

Tracepoints jsou jiným způsobem použití zarážky.Zarážky, který vytiskne zprávu, která je tracepoint výstupu okna.Tracepoint mohou sloužit jako příkaz dočasné trasování v programovacím jazyce.

Chcete-li vytisknout zprávu na existující zarážky, otevřete místní nabídku pro zarážky a zvolte Při zasažení.

Zadat zprávu pro tisk v Při je zasažení zarážky dialogového okna.

Pokud je zasažení zarážky dialogové okno

Zadejte zprávu

Mohou zahrnovat informace a programátorské ve zprávě s použitím syntaxe DebuggerDisplayAttribute (viz DebuggerDisplayAttribute).Zde najdete několik příkladů:

  • In function '{$FUNC}', on thread '{$TID}'

  • Used variable: {varName}, function name: {functionName($FUNC)}

Všechny klíčová slova, která jsou popsány v můžete používat Při je zasažení zarážky dialogového okna.Kromě toho můžete použít dva další klíčová slova, která nejsou zobrazeny v dialogovém okně:

  1. $TICK Vloží aktuální počet impulsů procesoru

  2. $FILEPOS Vloží aktuální pozice v souboru

Určete chování tracepoint

Chcete-li přerušit provádění, když je přístupů tracepoint, zrušte zaškrtnutí pokračovat v provádění zaškrtávací políčko.Při pokračovat v provádění je zaškrtnuto, provádění neskončí.V obou případech je vytištěno zprávy.

Zakázat tracepoint

Chcete-li dočasně zakázat tracepoint, zrušte zaškrtnutí vytisknout zprávu zaškrtávací políčko.

Spravovat zarážky v okně zarážky

  • Export a import zarážky • Popisek zarážky

Téměř všechny funkce nastavit, konfigurovat a spravovat zarážky z zarážky okno je k dispozici na jednotlivé zarážky místech v sadě windows zdroje zásobník volání okna a zpětný překlad okna.Ale zarážky okna vám poskytnou centrální místo pro správu všech zarážky, což může být užitečná ve velkých řešení nebo komplexní ladění scénář, kde jsou kritické zarážky.Pokud potřebujete k uložení nebo sdílení stavu a umístění sady zarážky, můžete uložit a importovat soubory zarážky pouze z zarážky okna.

Zpět na začátekSpravovat zarážky v okně zarážky

Popisek zarážky

Zarážky popisky jsou použity pouze v zarážky okno Seřadit a filtrovat seznam zarážky.Chcete-li přidat popisek zarážky, zvolte zarážky řádku a pak zvolte popisek v místní nabídce.

Poradce při potížích s zarážky

  • Ladicí program nelze určit zdrojového souboru pro zarážky • ladicí program nemůže najít správnou verzi zdrojového souboru pro zarážky • zarážky nejsou k dispozici v knihovně DLL

Ladicí program nelze určit zdrojového souboru pro zarážky

Pokud dvě nebo více zdrojové soubory v projektu mají stejný název, ladicí program může mít potíže s určením souborů, které zarážky je nastavena v.K tomu často dochází, je-li vytvořit modul se stejným názvem jako součást knihovny ladění, kterou vytváříte propojení.

Chcete-li tento problém odstranit, vyberte zarážky v okně zdroj a zvolte umístění v místní nabídce.

Dialogové okno zarážky souboru

Zadejte úplnou cestu k souboru správné ve soubor pole

Zpět na začátek Poradce při potížích s zarážky

Ladicí program nemůže najít správnou verzi zdrojového souboru pro zarážky

Pokud zdrojový soubor byl změněn a zdroj již neodpovídá kódu, které jsou ladění, ladicí program může vyhledejte zdrojový soubor, který odpovídá zarážky, přestože zdrojový soubor existuje.

  1. Pokud chcete, aby sady Visual Studio, chcete-li zobrazit zdrojový kód, který neodpovídá verzi jsou ladění, zvolte ladění, Možnosti a nastavení.Na ladění/Obecné zrušte používat pouze zdrojový kód, který přesně odpovídá původní verze možnost.

  2. Můžete také navázat zarážky do zdrojového souboru.Vyberte zarážky a zvolte umístění v místní nabídce.Zkontrolujte Povolit zdrojový kód a lišit od původní verze v zarážky soubor dialogového okna.

Zpět na začátek Poradce při potížích s zarážky

Zarážky nejsou k dispozici v knihovně DLL

Nelze nastavit zarážky ve zdrojovém souboru Když ladicí program nebyla načtena informace o ladění pro modul kde je umístěna kód.Příznaky mohou zahrnovat zprávy, jako je například nelze nastavit bod přerušení.Zarážky glyf upozornění se zobrazí v umístění zarážky.Tyto zarážky upozornění však budou skutečný zarážky při načtení kódu.

Zpět na začátekPoradce při potížích s zarážky

Odkaz na glyfy zarážky

Windows zdroje a zpětný překlad okně Zobrazit zarážky umístění pomocí zobrazení symbolů volá glyfy do levého okraje.Následující tabulka popisuje tyto glyfů.

Pokud ukazatel myši na glyf zarážky, zobrazí se podrobnější informace popisu zarážky.Tyto informace jsou obzvláště užitečný, chyby a upozornění zarážky.

Piktogram

Popis

Ladění nich 1

Normální zarážky.Plné glyf označuje, že je povoleno zarážky.Prázdný glyf označuje, že je zakázán.

Ladění nich 2

Pokročilé zarážky.Aktivní/zakázáno.+ Znaménko znamená, že zarážky má alespoň jeden, které jsou k němu připojené upřesňující funkce (například podmínky, a poté klikněte na tlačítko počet nebo filtru).

Ladění nich 3

Namapované zarážky.Aktivní/zakázáno.Zarážky je nastavena v ASP /ASP.NET kód a namapován na zarážky na stránce odpovídající HTML nebo nastavit v souboru skriptu na straně serveru a namapovány na odpovídající soubor skriptu na straně klienta.

Ladění nich 4

Tracepoint.Aktivní/zakázáno.Tento bod stiskne provede zadanou akci, ale nedojde k narušení vykonávání programu.

Ladění nich 5

Pokročilé tracepoint.Aktivní/zakázáno.+ Znaménko znamená, že tracepoint má alespoň jeden, které jsou k němu připojené upřesňující funkce (například podmínky, a poté klikněte na tlačítko počet nebo filtru).

Ladění nich 6

Namapované tracepoint.Aktivní/zakázáno.V prostředí ASP je nastavena tracepoint /ASP.NET kód a namapovány na tracepoint odpovídající stránce HTML.

Ladění nich 7

Chyba zarážky nebo tracepoint.X označuje, že z důvodu chybového stavu nelze nastavit bod přerušení nebo tracepoint.

Ladění nich 8

Zarážky nebo tracepoint upozornění.Vykřičník zaškrtnuto, znamená to, že z důvodu dočasný stav nelze nastavit bod přerušení nebo tracepoint.Obvykle to znamená, že kód na umístění zarážky nebo tracepoint nebyla načtena.Lze jej také zobrazit, pokud se můžete připojit k procesu a symbolů pro tento proces nebudou načteny.Když kód nebo symboly jsou načteny, dojde k povolení zarážky a glyf změní.

Viz také

Koncepty

Zastavení, pozastavení, krok, spuštění prostřednictvím kódu a ukončení ladění v sadě Visual Studio