Obecné možnosti ladění
Pokud chcete nastavit možnosti ladicího programu sady Visual Studio, vyberte Možnosti nástrojů>a v části Ladění vyberte nebo zrušte výběr polí vedle obecných možností. Všechna výchozí nastavení můžete obnovit pomocí nástrojů>importu a exportu Nastavení> Nastavení všech nastavení. Pokud chcete obnovit podmnožinu nastavení, uložte nastavení pomocí Průvodce importem a exportem Nastavení před provedením změn, které chcete otestovat, a potom naimportujte uložená nastavení.
Můžete nastavit následující obecné možnosti:
Před odstraněním všech zarážek se zeptejte: Před dokončením příkazu Odstranit všechny zarážky vyžaduje potvrzení.
Přerušení všech procesů, když se jeden proces přeruší: Současně přeruší všechny procesy, ke kterým je ladicí program připojen, když dojde k přerušení.
Přerušení při výjimkách mezi doménou AppDomain nebo spravovanými nebo nativními hranicemi: Při ladění spravovaného nebo smíšeného režimu může modul CLR (Common Language Runtime) zachytit výjimky, které překračují hranice domény aplikace nebo spravované nebo nativní hranice, pokud jsou splněné následující podmínky:
Když nativní kód volá spravovaný kód pomocí zprostředkovatele komunikace modelu COM a spravovaný kód vyvolá výjimku. Viz Úvod do zprostředkovatele komunikace s objekty COM.
Když spravovaný kód spuštěný v doméně aplikace 1 volá spravovaný kód v doméně aplikace 2 a kód v doméně aplikace 2 vyvolá výjimku. Viz Programování s doménami aplikace.
Když kód volá funkci pomocí reflexe a tato funkce vyvolá výjimku. Viz Reflexe ion.
V podmínkách 2 a 3 je výjimka někdy zachycena spravovaným kódem mscorlib
, nikoli modulem CLR (Common Language Runtime). Tato možnost nemá vliv na přerušení výjimek zachycených mscorlib
.
Povolit ladění na úrovni adresy: Umožňuje pokročilé funkce pro ladění na úrovni adresy (okno zpětného překladu, okno Registry a zarážky adres).
- Zobrazit zpětný překlad, pokud zdroj není k dispozici: Automaticky zobrazí okno zpětného překladu, když ladíte kód, pro který zdroj není k dispozici.
Povolit filtry zarážek: Umožňuje nastavit filtry na zarážkách tak, aby ovlivnily pouze konkrétní procesy, vlákna nebo počítače.
Použijte novou pomocnou rutinu výjimky: Povolí pomocníka výjimky, který nahradí pomocníka s výjimkou. (Pomocník pro výjimky se podporuje od sady Visual Studio 2017.
Poznámka:
Pro spravovaný kód byla tato možnost dříve volána Enable the exception assistant .
Povolit pouze můj kód: Ladicí program zobrazí a provede kroky pouze do uživatelského kódu ("Můj kód") a ignoruje systémový kód a jiný kód, který je optimalizovaný nebo nemá symboly ladění.
- Upozornit, pokud při spuštění není žádný uživatelský kód (pouze spravovaný):: Při ladění začíná s povoleným pouze mým kódem, tato možnost vás upozorní, pokud neexistuje žádný uživatelský kód ("Můj kód").
Povolte krokování zdrojového kódu rozhraní .NET Framework: Povolí ladicím programu krokovat do zdroje rozhraní .NET Framework. Povolení této možnosti automaticky zakáže jenom můj kód. Symboly rozhraní .NET Framework se stáhnou do umístění mezipaměti. Změňte umístění mezipaměti pomocí dialogového okna Možnosti , kategorie Ladění , stránka Symboly .
Krokujte nad vlastnostmi a operátory (pouze spravované):: Zabrání ladicím programu v krokování do vlastností a operátorů ve spravovaném kódu.
Povolit vyhodnocení vlastností a další implicitní volání funkcí: Zapne automatické vyhodnocení vlastností a implicitních volání funkcí v oknech proměnných a v dialogovém okně QuickWatch .
- Volání funkce převodu řetězců u objektů v oknech proměnných (pouze C# a JavaScript):: Při vyhodnocování objektů v oknech proměnných provede implicitní volání převodu řetězců. Výsledek se místo názvu typu zobrazí jako řetězec. Platí pouze při ladění v kódu jazyka C#. Toto nastavení může být přepsáno atributem DebuggerDisplay (viz Použití atributu DebuggerDisplay).
Povolení podpory zdrojového serveru: Informuje ladicí program sady Visual Studio o získání zdrojových souborů ze zdrojových serverů, které implementují protokol SrcSrv (srcsrv.dll
). Team Foundation Server a nástroje ladění pro Windows jsou dva zdrojové servery, které implementují protokol. Další informace o nastavení SrcSrv najdete v dokumentaci k SrcSrv . Kromě toho viz Zadání symbolu (.pdb) a zdrojových souborů.
Důležité
Protože čtení souborů .pdb může v souborech spouštět libovolný kód, ujistěte se, že serveru důvěřujete.
Tisk diagnostických zpráv zdrojového serveru do okna Výstup: Pokud je povolena podpora zdrojového serveru, toto nastavení zapne zobrazení diagnostiky.
Povolit zdrojovému serveru pro sestavení s částečnou důvěryhodností (pouze spravované): Pokud je povolená podpora zdrojového serveru, toto nastavení přepíše výchozí chování při načítání zdrojů pro sestavení s částečnou důvěryhodností.
Vždy spouštějte nedůvěryhodné příkazy zdrojového serveru bez výzvy: Pokud je povolena podpora zdrojového serveru, toto nastavení přepíše výchozí chování výzvy při spuštění nedůvěryhodného příkazu.
Povolení podpory zdrojového odkazu: Informuje ladicí program sady Visual Studio, aby stahovat zdrojové soubory pro soubory PDB , které obsahují informace o zdrojovém odkazu. Další informace o odkaz na zdroj naleznete ve specifikaci propojení zdroje.
Důležité
Protože zdrojový odkaz stáhne soubory pomocí http nebo https, ujistěte se, že důvěřujete souboru .pdb .
- Vraťte se k ověřování Správce přihlašovacích údajů Gitu pro všechny požadavky na zdrojové propojení: Pokud je povolená podpora odkazu na zdroj a požadavek na zdrojový odkaz selže s ověřováním, Visual Studio pak zavolá Správce přihlašovacích údajů Gitu.
Zvýrazněte celý zdrojový řádek pro zarážky a aktuální příkaz (jenom C++): Když ladicí program zvýrazní zarážku nebo aktuální příkaz, zvýrazní celý řádek.
Vyžadovat, aby zdrojové soubory přesně odpovídaly původní verzi: Informuje ladicí program, aby ověřil, že zdrojový soubor odpovídá verzi zdrojového kódu použité k sestavení spustitelného souboru, který ladíte. Pokud se verze neshoduje, zobrazí se výzva k vyhledání odpovídajícího zdroje. Pokud se nenajde odpovídající zdroj, zdrojový kód se během ladění nezobrazí.
Přesměrujte veškerý text okna Výstup do příkazového okna: Odešle všechny zprávy ladicího programu, které by se obvykle zobrazovaly v okně Výstup , do okna Okamžité místo toho.
Zobrazit nezpracovanou strukturu objektů v oknech proměnných: Vypne všechna přizpůsobení zobrazení struktury objektů. Další informace o přizpůsobení zobrazení naleznete v tématu Vytváření vlastních zobrazení spravovaných objektů.
Potlačení optimalizace JIT při načítání modulu (jenom spravované): Zakáže optimalizaci JIT spravovaného kódu při načtení modulu a kompilaci JIT při připojení ladicího programu. Zakázání optimalizace může usnadnit ladění některých problémů, i když na úkor výkonu. Pokud používáte jenom můj kód, může potlačení optimalizace JIT způsobit, že se kód uživatele zobrazí jako uživatelský kód (Můj kód). Další informace najdete v tématu Optimalizace a ladění JIT.
Povolte ladění JavaScriptu pro ASP.NET (Chrome, Microsoft Edge a IE): Povolí ladicí program skriptu pro ASP.NET aplikace. Při prvním použití v Chromu se možná budete muset přihlásit k prohlížeči, abyste povolili nainstalovaná rozšíření Chromu. Tuto možnost zakažte, pokud se chcete vrátit k chování starší verze.
Povolte použití vícecílového ladicího programu JavaScriptu pro ladění JavaScriptu v příslušných cílech (vyžaduje restartování ladění) Umožňuje připojení k prohlížeči a back-endu současně, což vám umožní ladit kód spuštěný v klientovi a serveru přímo z editoru.
Načtení exportů dll (pouze nativní):: Načte tabulky exportu knihovny DLL. Informace o symbolech z tabulek exportu knihovny DLL mohou být užitečné, pokud pracujete se zprávami systému Windows, procedurami systému Windows (WindowProcs), objekty COM nebo zařazováním nebo jakoukoli knihovnou DLL, pro kterou nemáte symboly. Informace o exportu knihovny DLL pro čtení zahrnují určité režijní náklady. Proto tato možnost je ve výchozím nastavení vypnuta.
Chcete-li zjistit, jaké symboly jsou k dispozici v tabulce exportu knihovny DLL, použijte dumpbin /exports
. Symboly jsou k dispozici pro libovolnou 32bitovou systémovou knihovnu DLL. Když si přečtete dumpbin /exports
výstup, uvidíte přesný název funkce, včetně nealnumerických znaků. To je užitečné pro nastavení zarážky na funkci. Názvy funkcí z tabulek exportu dll se můžou v ladicím programu zobrazit zkráceně jinde. Volání jsou uvedena v pořadí volání s aktuální funkcí (nejhlouběji vnořených) nahoře. Další informace najdete v tématu dumpbin /export.
Zobrazení diagramu paralelních zásobníků dole: Řídí směr zobrazení zásobníků v okně Paralelní zásobníky .
Výjimky přístupu k paměti GPU ignorujte, pokud zapsaná data nezměnila hodnotu: Ignoruje podmínky časování, které byly zjištěny během ladění, pokud se data nezměnila. Další informace najdete v tématu Ladění kódu GPU.
Použít spravovaný režim kompatibility: Nahradí výchozí ladicí modul starší verzí, aby bylo možné tyto scénáře:
Používáte jiný jazyk .NET než C#, Visual Basic nebo F#, který poskytuje vlastní vyhodnocovač výrazů (to zahrnuje C++/CLI).
Chcete povolit funkci Upravit a pokračovat pro projekty C++ během ladění smíšeného režimu.
Poznámka:
Volba režimu spravované kompatibility zakáže některé funkce implementované pouze ve výchozím ladicím modulu. Starší verze modulu ladění byla v sadě Visual Studio 2012 nahrazena.
Upozornit při použití vizualizérů vlastního ladicího programu proti potenciálně nebezpečným procesům (pouze spravovaným): Visual Studio vás upozorní, když používáte vizualizér vlastního ladicího programu, který spouští kód v ladicím procesu, protože může být spuštěn nebezpečný kód.
Povolit alokátor haldy ladění systému Windows (pouze nativní):: Povolí haldu ladění systému Windows ke zlepšení diagnostiky haldy haldy. Povolení této možnosti bude mít vliv na výkon ladění.
Povolit nástroje pro ladění uživatelského rozhraní pro XAML: Dynamický vizuální strom a okna Dynamické zkoumání vlastností se zobrazí při spuštění ladění (F5) podporovaného typu projektu. Další informace naleznete v tématu Kontrola vlastností XAML při ladění.
Náhled vybraných prvků v dynamickém vizuálním stromu: Prvek XAML, jehož kontext je vybrán, je také vybrán v okně Dynamický vizuální strom .
Zobrazit nástroje modulu runtime v aplikaci: Zobrazuje příkazy dynamického vizuálního stromu na panelu nástrojů v hlavním okně aplikace XAML, která se ladí.
Povolit Opětovné načítání za provozu XAML: Umožňuje používat funkci Opětovné načítání za provozu XAML s kódem XAML při spuštění aplikace. (Tato funkce se dříve jmenovala Edit and Continue (Upravit a pokračovat XAML)
Povolit jen můj KÓD XAML: Počínaje sadou Visual Studio 2019 verze 16.4 se ve výchozím nastavení zobrazuje pouze xaml klasifikovaný jako uživatelský kód. Pokud tuto možnost zakážete, zobrazí se v nástroji veškerý vygenerovaný kód XAML.
Režim výběru vypněte, když je vybraný prvek Počínaje sadou Visual Studio 2019 verze 16.4, tlačítko selektoru elementu v aplikaci (Povolit výběr) vypne, když je vybraný prvek. Pokud tuto možnost zakážete, zůstane výběr prvků zapnutý, dokud znovu neklepnete na tlačítko panelu nástrojů v aplikaci.
Použití Opětovné načítání za provozu XAML na uložení dokumentu počínaje sadou Visual Studio 2019 verze 16.6 použije Opětovné načítání za provozu XAML při uložení dokumentu.
Povolit diagnostické nástroje při ladění: Během ladění se zobrazí okno Diagnostické nástroje .
Zobrazit uplynulý čas PerfTip při ladění: Okno kódu zobrazí uplynulý čas daného volání metody při ladění.
Povolit funkci Upravit a pokračovat: Povolí funkci Upravit a pokračovat při ladění.
Povolit nativní úpravy a pokračovat: Funkci Upravit a pokračovat můžete použít při ladění nativního kódu C++. Další informace najdete v tématu Upravit a pokračovat (C++).
Použít změny při pokračování (pouze nativní):Visual Studio automaticky zkompiluje a použije všechny neuhrazené změny kódu, které jste provedli při pokračování procesu ze stavu přerušení. Pokud není vybraná, můžete použít změny pomocí položky Použít změny kódu v nabídce Ladění .
Upozornění na zastaralý kód (pouze nativní):: Zobrazí se upozornění na zastaralý kód.
Při ladění se v editoru zobrazí tlačítko Spustit a kliknout: Když je tato možnost vybraná, zobrazí se při ladění tlačítko Spustit do kliknutí .
Automaticky zavřete konzolu při zastavení ladění: Řekne sadě Visual Studio, aby ukončila konzolu na konci ladicí relace.
Povolit rychlé vyhodnocení výrazu (pouze spravované):: Umožňuje ladicímu programu pokus o rychlejší vyhodnocení simulací provádění jednoduchých vlastností a metod.
Načíst symboly ladění v externím procesu (pouze nativní) Umožňuje tuto optimalizaci paměti při ladění.
Přenesení sady Visual Studio do popředí při přerušení v ladicím programu Přepne Visual Studio na popředí, když se pozastavíte v ladicím programu.
Nechte rozbalené datové tipy otevřené, dokud neklikáte, pokud je vybraná tato možnost, rozbalený datový tip zůstane rozbalený, dokud na ni neklikáte.
Možnosti dostupné ve starších verzích sady Visual Studio
Pokud používáte starší verzi sady Visual Studio, můžou být k dispozici některé další možnosti.
Povolit Vývojářské nástroje edge pro javascriptové aplikace pro UPW (experimentální): Umožňuje vývojářské nástroje pro javascriptové aplikace pro UPW v Microsoft Edgi.
Povolte starší verzi ladicího programu pro Chrome JavaScript pro ASP.NET: Povolí starší ladicí program skriptů Pro Chrome JavaScript pro ASP.NET aplikace. Při prvním použití v Chromu se možná budete muset přihlásit k prohlížeči, abyste povolili nainstalovaná rozšíření Chromu.
Povolte pomocníka s výjimkami: Pro spravovaný kód povolí pomocníka s výjimkami. Počínaje sadou Visual Studio 2017 nahradil pomocník výjimky pomocníka pro výjimky.
Uvolnění zásobníku volání u neošetřených výjimek: Způsobí , že okno zásobníku volání vrátí zásobník volání do bodu předtím, než došlo k neošetřené výjimce.
Při spuštění sady Visual Studio jako Správa istratoru použijte experimentální způsob, jak spustit ladění Chrome v JavaScriptu: Řekne sadě Visual Studio, aby vyzkoušel nový způsob spuštění Chromu během ladění JavaScriptu.
Upozornit, pokud nejsou při spuštění žádné symboly (pouze nativní):: Zobrazí dialogové okno upozornění při ladění programu, pro který ladicí program neobsahuje žádné informace o symbolech.
Upozornit, pokud je při spuštění zakázané ladění skriptu: Zobrazí dialogové okno upozornění při spuštění ladicího programu se zakázaným laděním skriptu.
Použít režim spravované kompatibility: Pokud je tato možnost vybraná, ladicí program používá spravovaný ladicí program sady Visual Studio 2010, který byl vyžadován při ladění kódu C++/CLI.
Použít nativní režim kompatibility: Pokud je tato možnost vybrána, ladicí program používá nativní ladicí program sady Visual Studio 2010 místo nového nativního ladicího programu.
- Tuto možnost použijte při ladění kódu .NET C++, protože nový ladicí modul nepodporuje vyhodnocování výrazů .NET C++. Povolení nativního režimu kompatibility však zakáže mnoho funkcí, které závisí na aktuální implementaci ladicího programu, aby fungovala. Starší verze modulu například nemá mnoho vizualizérů pro předdefinované typy, jako jsou
std::string
v projektech sady Visual Studio 2015. Projekty sady Visual Studio 2013 použijte pro optimální prostředí ladění v těchto případech.