Ladění jednoho nebo více procesů v sadě Visual Studio
Zde uvádíme postup při spuštění procesů ladění, přepínání mezi procesy, přerušení a pokračování v provádění akce, procházení zdroje, zastavení ladění a ukončení nebo odpojení od procesů.
Obsah
Konfigurace chování spuštění více procesů
Najít zdrojové soubory a soubory symbolů (PDB)
Spuštění více procesů v řešení VS, připojit k procesu, automaticky spustit proces v ladicím programu
Přepnout procesy, ukončit provádění a pokračovat v něm, procházet zdroj
Zastavit ladění, ukončit nebo odpojit od procesů
Konfigurace chování spuštění více procesů
Ve výchozím nastavení při více spuštěných procesů v ladicím programu ovlivňují příkazy „break“, „step“ a „stop“ ladění většinou všechny procesy.Například pokud je jeden proces pozastaven na zarážce, spuštění všech procesů je také pozastaveno.Toto výchozí chování můžete změnit a získat tak větší kontrolu nad cíli prováděcích příkazů.
V nabídce Ladění zvolte možnost Možnosti a nastavení.
Na stránce Ladění, Obecné, zrušte zaškrtnutí políčka Přerušit všechny procesy, když se jeden přeruší.
Obsah
Najít zdrojové soubory a soubory symbolů (PDB)
Aby mohl procházet zdrojový kód procesu, potřebuje ladicí program přístup ke zdrojovým souborů a souborů symbolů procesu.Viz téma Zadání symbolu (.pdb) a zdrojových souborů v ladicím programu sady Visual Studio.
Pokud nelze získat přístup k souborům pro proces, můžete k procházení použít okno Zpětný překlad.Viz téma Postupy: Použití okna zpětného překladu.
Obsah
Spustit více procesů v řešení VS, připojit k procesu, automaticky spustit proces v ladicím programu
- Spuštění ladění více procesů v řešení aplikace Visual Studio • Změnit projekt při spuštění • Spustit určitý projekt v řešení • Spustit více projektů v řešení • Připojit k procesu • Automaticky spustit z procesu v ladicím programu.
[!POZNÁMKA]
Ladicí program se nepřipojí automaticky k podřízenému procesu, který je spuštěn procesem ladění i pokud je podřízený projekt ve stejném řešení.Ladění podřízeného procesu:
Připojte se k podřízenému procesu po jeho spuštění.
-nebo-
Nakonfigurujte systém Windows, aby automaticky spustil podřízený proces v nové instanci ladicího programu.
Spustit ladění více procesů v řešení aplikace Visual Studio
Když máte v řešení aplikace Visual Studio více projektů, které lze spustit samostatně (projekty, které běží v samostatných procesech), můžete vybrat projekty, které spustí ladicí program.
Změna projektu po spuštění
Chcete-li změnit projekt při spuštění pro řešení, vyberte projekt v Průzkumníku řešení a pak zvolte možnost Nastavit jako projekt při spuštění z kontextové nabídky.
Spuštění určitého projektu v řešení
Chcete-li zahájit projekt pro řešení bez změny výchozího projektu po spuštění, vyberte projekt v Průzkumníku řešení a pak zvolte možnost Ladění z kontextové nabídky.Pak můžete spustit novou instanci nebo Krok do nové instance.
Spustit více procesů v řešení VS, připojit k procesu, automaticky spustit proces v ladicím programu
Obsah
Spustit více projektů v řešení
Vyberte řešení v nástroji Průzkumník řešení a pak zvolte možnost Vlastnosti v místní nabídce.
Vyberte Společné vlastnosti, Spusťte projekt v dialogovém okně Vlastnosti.
Pro každý projekt, který chcete změnit, zvolte buď Start, Spustit bez ladění, nebo Žádný.
Spustit více procesů v řešení VS, připojit k procesu, automaticky spustit proces v ladicím programu
Obsah
Připojit k procesu
Ladicí program se můžete také připojit k programům, které mají spuštěné procesy mimo sadu Visual Studio, včetně programů, které běží na vzdáleném zařízení.Po připojení k programu můžete použít příkazy spuštění ladicího programu, kontrolovat stav programu a podobně.Vaše schopnost kontrolovat, zda byl program sestaven s ladicími informacemi, zda ladicí program má přístup ke zdrojovému kódu programu a zda kompilátor JIT společného běhového modulu jazyka sleduje informace o ladění.
Další informace naleznete v tématu Připojení ke spuštěným procesům pomocí ladicího programu sady Visual Studio.
Připojit k procesu, který je spuštěn v místním počítači
Zvolte možnost Ladění > Připojit k procesu.V dialogovém okně Připojit k procesu vyberte proces v seznamu Procesy k dispozici a poté zvolte možnost Připojit.
Obsah
Automaticky spustit proces v ladicím programu
V některých případech je třeba ladit spouštěcí kód programu, který je spouštěn jiným procesem.Příklady zahrnují služby a akce pro vlastní nastavení.V těchto případech může být ladicí program spuštěn a automaticky připojen při spuštění aplikace.
Spusťte Editor registru (regedit.exe).
Přejděte do složky HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options.
Vyberte složku aplikace, kterou chcete spustit v ladicím programu.
Pokud název aplikace není uveden jako podřízená složka, vyberte položku Možnosti spuštění souboru bitové kopie a pak zvolte možnosti Nový, Klíč v kontextové nabídce.Vyberte nový klíč, zvolte Přejmenovat v místní nabídce a poté zadejte název aplikace.
V kontextové nabídce složky aplikace, zvolte možnost Nové, Hodnota řetězce.
Změňte název nové hodnoty z New Value na ladicí program.
V kontextové nabídce položky ladicího programu vyberte možnost Změnit.
V dialogovém okně Upravit řetězec zadejte vsjitdebugger.exe do pole Data hodnoty.
Obsah
Přepnout procesy, ukončit provádění a pokračovat v něm, procházet zdroj
- Přepnutí mezi procesy • Zrušit, krokovat a pokračovat v příkazech
Přepne mezi procesy
Můžete se připojit k více procesům při ladění, ale pouze jeden proces je v daném okamžiku aktivní v ladicím programu.Lze nastavit aktivní nebo aktuální proces na panelu nástrojů Ladění nebo v okně Procesy.Chcete-li přepnout mezi procesy, oba procesy musí být v režimu pozastavení.
Nastavení aktuálního procesu
Na panelu nástrojů Umístění ladění zvolením možnosti Proces zobrazte seznam Proces.Vyberte proces, který chcete nastavit jako aktuální proces.
Pokud panel nástrojů Umístění ladění není zobrazen, vyberte položky Nástroje, Přizpůsobit.Na kartě Panely nástrojů vyberte Umístění ladění.
Otevřete okno Procesy (zkratka Ctrl+Alt+Z), vyhledejte proces, který chcete nastavit jako aktuální proces a poklepejte na něj.
Aktuální proces je označen žlutou šipkou.
Přepnutí do projektu umožňuje aktuální proces pro účely ladění.Jakékoli okno ladicího programu, které prohlédnete, zobrazí stav pro aktuální proces a všechny příkazy krokování ovlivní pouze aktuální proces.
Přepnout procesy, ukončit provádění a pokračovat v něm, procházet zdroj
Obsah
Příkazy „break“, „step“ a „continue“
[!POZNÁMKA]
Ve výchozím nastavení mají příkazy ladicího programu „break“, „continue“ a „step“ vliv na všechny procesy, které jsou právě laděny.Chcete-li toto chování změnit, viz Konfigurace chování provádění více procesů
Příkaz |
Přerušit všechny procesy při přerušení jednoho procesu Zkontrolováno (výchozí) |
Přerušit všechny procesy při přerušení jednoho procesu Zrušeno |
Nabídka Ladění:
|
Budou přerušeny všechny procesy. |
Budou přerušeny všechny procesy. |
Nabídka Ladění:
|
Obnoví se všechny procesy. |
Všechny pozastavené procesy budou pokračovat. |
Nabídka Ladění:
|
Všechny procesy jsou spuštěny během kroků aktuálního procesu. Pak budou přerušeny všechny procesy. |
Aktuální kroky procesu. Pokračování pozastavených procesů. Spuštěné procesy pokračují. |
Nabídka Ladění:
|
Není k dispozici |
Aktuální kroky procesu. Jiné procesy udržují svůj stávající stav (pozastaveno nebo spuštěno). |
Okno zdroje
|
Budou přerušeny všechny procesy. |
Přerušují se pouze procesy zdroje okna. |
Kontextová nabídka okna zdroje:
Okno zdroje musí být v aktuálním procesu. |
Všechny procesy jsou spuštěny během spuštění procesu zdrojového okna ke kurzoru a poté se přeruší. Pak budou přerušeny všechny ostatní procesy. |
Proces zdrojového okna je spuštěn na kurzoru. Jiné procesy udržují svůj stávající stav (pozastaveno nebo spuštěno). |
Kontextová nabídka okna Procesy:
|
Není k dispozici |
Vybraný proces bude ukončen. Jiné procesy udržují svůj stávající stav (pozastaveno nebo spuštěno). |
Kontextová nabídka okna Procesy:
|
Není k dispozici |
Vybraný proces bude pokračovat. Jiné procesy udržují svůj stávající stav (pozastaveno nebo spuštěno). |
Přepnout procesy, ukončit provádění a pokračovat v něm, procházet zdroj
Obsah
Zastavit ladění, ukončit nebo odpojit od procesů
- Zastavit, ukončit a odebrat příkazy
Pokud ve výchozím nastavení zvolíte možnost Ladění, Ukončit ladění a v ladicím programu je otevřeno více procesů, ladicí program v závislosti na tom, jak byl proces v ladícím programu zahájen, se ukončí nebo odpojí od všech procesů:
Pokud byl aktuální proces spuštěn v ladicím programu, tento proces bude ukončen.
Pokud jste ladicí program připojili k aktuálnímu procesu, ladicí program se odpojí z procesu a ponechá proces spuštěný.
Například pokud spustíte ladění procesu v rámci řešení Visual Studio, připojíte je k jinému procesu, který je již spuštěn a kliknete na tlačítko Zastavit ladění, relace ladění skončí, proces spuštěný v aplikaci Visual Studio se ukončí a proces, který jste připojili, zůstane spuštěn.Následující postupy můžete použít k řízení způsobu, jakým zastavujete ladění.
[!POZNÁMKA]
Možnost Přerušit všechny procesy, když se jeden přeruší nemá vliv na zastavení ladění nebo ukončení a odpojení od procesů.
Změna toho, jaký má funkce Zastavit ladění vliv na jednotlivé procesy
- Otevřete okno Procesy (zkratka Ctrl+Alt+Z).Vyberte proces a pak zaškrtněte nebo zrušte zaškrtnutí políčka Odpojit při zastavení ladění.
Zastavit, ukončit a odebrat příkazy
Příkaz |
Description |
Nabídka Ladění:
|
Pokud není toto chování změněno v okně Procesy možností Odpojit při konci ladění:
|
Nabídka Ladění:
|
Všechny procesy budou ukončeny. |
Nabídka Ladění:
|
Ladicí program se odpojí ze všech procesů. |
Kontextová nabídka okna Procesy:
|
Ladicí program se odpojí z vybraných procesů. Jiné procesy udržují svůj stávající stav (pozastaveno nebo spuštěno). |
Kontextová nabídka okna Procesy:
|
Vybraný proces je ukončen. Jiné procesy udržují svůj stávající stav (pozastaveno nebo spuštěno). |
Kontextová nabídka okna Procesy:
|
Přepíná chování možnosti Ladění, Zastavit ladění u vybraného procesu:
|
Zastavit ladění, ukončit nebo odpojit od procesů
Obsah
Viz také
Koncepty
Zastavení, pozastavení, krok, spuštění prostřednictvím kódu a ukončení ladění v sadě Visual Studio
Ladění za běhu v sadě Visual Studio
Další zdroje
Zadání symbolu (.pdb) a zdrojových souborů v ladicím programu sady Visual Studio
Připojení ke spuštěným procesům pomocí ladicího programu sady Visual Studio