Nastavení projektu pro konfiguraci ladění jazyka C++
Nastavení projektu pro konfiguraci ladění jazyka C nebo C++ můžete změnit v dialogovém okně Stránky vlastností, jak je popsáno v tématu Postupy: Nastavení konfigurace ladění a vydání. Následující tabulky ukazují, kde najít nastavení související s ladicím programem v dialogovém okně Stránky vlastností.
Poznámka:
Nastavení ladění projektu v kategorii Vlastnosti konfigurace /Ladění se liší pro aplikace UPW a pro komponenty napsané v jazyce C++. Viz Spuštění ladicí relace (VB, C#, C++ a XAML).
Každé nastavení vlastnosti ladění se automaticky zapíše a uloží do souboru "per-user" (.vcxproj.user) pro vaše řešení při uložení řešení.
Určete, který ladicí program se má použít v ladicím programu ke spuštění seznamu, jak je popsáno v následující tabulce. Vaše volba ovlivní, které vlastnosti jsou viditelné.
Složka Vlastnosti konfigurace (kategorie Ladění)
Nastavení | Popis |
---|---|
Ladicí program ke spuštění | Určuje ladicí program, který se má spustit, s následujícími možnostmi: - Místní ladicí program systému Windows - Vzdálený ladicí program systému Windows - Ladicí program webového prohlížeče - Ladicí program webové služby |
Příkaz (místní ladicí program systému Windows) | Určuje příkaz pro spuštění programu, který ladíte v místním počítači. |
Vzdálený příkaz (vzdálený ladicí program systému Windows) | Cesta souboru .exe ve vzdáleném počítači. Zadejte cestu stejně, jako byste ji zadali na vzdáleném počítači. |
Argumenty příkazů (místní ladicí program systému Windows) Argumenty vzdáleného příkazu (vzdálený ladicí program systému Windows) |
– Určuje argumenty pro příkaz zadaný dříve. V tomto poli můžete použít následující operátory přesměrování: < file Načte soubor stdin ze souboru. > file Zapíše soubor stdout. >> file Připojí stdout k souboru. 2> file Zapíše stderr do souboru. 2>> file Připojí stderr k souboru. 2> &1 Odešle výstup stderr (2) do stejného umístění jako stdout (1). 1> &2 Odešle výstup stdout (1) do stejného umístění jako stderr (2). Ve většině případů se tyto operátory vztahují pouze na konzolové aplikace. Pokud v příkazu potřebujete řídicí znaky, můžete použít hodnoty ASCII, například %25, a nahradit tak %. Pokud použijete příkaz Spustit ladění , dvojité uvozovky uvozovky uniknou předchozím příkazům, například "<" k nahrazení <. |
Pracovní adresář | Určuje pracovní adresář laděného programu vzhledem k adresáři projektu, ve kterém je umístěn exe. Pokud toto pole necháte prázdné, pracovní adresář je adresář projektu. Pro vzdálené ladění je adresář projektu na vzdáleném serveru. |
Připojení (místní ladicí program systému Windows a vzdálený ladicí program systému Windows) | Určuje, jestli se má spustit nebo připojit k aplikaci. Výchozí nastavení je Ne. |
Název vzdáleného serveru (vzdálený ladicí program systému Windows) | Určuje název počítače (jiného než vašeho), na kterém chcete ladit aplikaci. Makro RemoteMachine Build je nastaveno na hodnotu této vlastnosti; Další informace naleznete v tématu Makra pro příkazy sestavení a vlastnosti. |
Připojení ion (vzdálený ladicí program systému Windows) | Umožňuje přepínat mezi standardními a typy připojení bez ověřování pro vzdálené ladění. Do pole Název vzdáleného serveru zadejte název vzdáleného počítače. typy Připojení ion zahrnují následující: - Vzdálené s ověřováním systému Windows - Vzdálené bez ověřování Poznámka: Vzdálené ladění bez ověřování může vzdálenému počítači ponechat ohrožené narušením zabezpečení. Režim ověřování systému Windows je bezpečnější. Další informace naleznete v tématu Nastavení vzdáleného ladění. |
ADRESA URL PROTOKOLU HTTP (Ladicí program webové služby a ladicí program webového prohlížeče) | Určuje adresu URL, kde se nachází projekt, který ladíte. |
Typ ladicího programu | Určuje typ ladicího programu, který se má použít: Nativní pouze, Pouze spravované, Pouze GPU, Smíšený, Automatický (výchozí) nebo Skript. - Nativní pouze pro nespravovaný kód C++. - Managed Only is for code that runs under the Common Language Runtime (managed code). - Smíšené vyvolá ladicí programy pro spravovaný i nespravovaný kód. - Auto určuje typ ladicího programu na základě informací kompilátoru a EXE. - Skript vyvolá ladicí program pro skripty. - GPU je pouze pro kód C++ AMP, který běží na zařízení GPU nebo v referenčním rastrovém rozhraní DirectX. Viz Ladění kódu GPU. |
Prostředí (místní ladicí program systému Windows a vzdálený ladicí program systému Windows) | Určuje proměnné prostředí pro program, který ladíte. Použijte standardní syntaxi proměnné prostředí (například PATH="%SystemRoot%\..." ). Tyto proměnné přepíší systémové prostředí nebo se sloučí se systémovým prostředím v závislosti na nastavení Sloučit prostředí . Když kliknete do pravého sloupce, zobrazí se "Upravit...". Výběrem odkazu otevřete Editor vlastností a upravte proměnné prostředí. Pokud chcete přidat více proměnných prostředí, použijte Editor vlastností a přidejte jednu proměnnou na řádek. |
Slučovací prostředí (místní ladicí program systému Windows) | Určuje, zda proměnné zadané v poli Prostředí budou sloučeny s prostředím, které je definováno operačním systémem. Výchozí nastavení je Ano. |
Ladění SQL (vše kromě ladicího programu clusteru MPI) | Umožňuje ladění procedur SQL z aplikace Visual C++. Výchozí nastavení je Ne. |
Typ akcelerátoru ladění (pouze ladění GPU) | Určuje zařízení GPU, které se má použít k ladění. Instalace ovladačů zařízení pro kompatibilní zařízení GPU přidá další možnosti. Výchozí nastavení je GPU – Emulátor softwaru. |
Výchozí chování zarážky GPU (pouze ladění GPU) | Určuje, jestli má být pro každé vlákno ve warpu SIMD vyvolána událost zarážky. Výchozím nastavením je vyvolání události zarážky pouze jednou na warp. |
Výchozí akcelerátor amp; | Určuje výchozí akcelerátor AMP při ladění kódu GPU. Zvolte akcelerátor softwaru WARP a prozkoumejte, jestli je problém způsobený hardwarem nebo ovladačem místo vašeho kódu. |
Adresář nasazení (vzdálený ladicí program systému Windows) | Určuje cestu na vzdáleném počítači, kde bude výstup projektu zkopírován před spuštěním. Cesta může být sdílená síťová složka ve vzdáleném počítači nebo cesta ke složce ve vzdáleném počítači. Výchozí nastavení je prázdné, což znamená, že výstup projektu se nezkopíruje do sdílené síťové složky. Chcete-li povolit nasazení souborů, musíte také zaškrtnout políčko Nasadit v dialogovém okně Configuration Manager. Další informace naleznete v tématu Postupy: Vytvoření a úprava konfigurací. |
Další soubory k nasazení (vzdálený ladicí program systému Windows) | Pokud je nastavena vlastnost Adresář nasazení, jedná se o seznam dalších složek nebo souborů oddělených středníkem, které se mají zkopírovat do adresáře nasazení. Výchozí nastavení je prázdné, což znamená, že do adresáře nasazení se nezkopírují žádné další složky ani soubory. Pokud chcete zkopírovat obsah složky do stejné složky v adresáři nasazení, zadejte název složky. Chcete-li povolit nasazení souborů, musíte také zaškrtnout políčko Nasadit v dialogovém okně Configuration Manager. Další informace naleznete v tématu Postupy: Vytvoření a úprava konfigurací. |
Nasazení knihoven modulu runtime ladění Visual C++ (vzdálený ladicí program systému Windows) | Pokud je nastavena vlastnost Adresář nasazení, určuje, zda se knihovny modulu runtime ladění Visual C++ pro aktuální platformu mají zkopírovat do sdílené síťové složky. Výchozí nastavení je Ano. |
Složka C/C++ (obecná kategorie)
Nastavení | Popis |
---|---|
Formát informací o ladění (/Z7, /Zd, Zi, /ZI) | Určuje typ informací o ladění, které se mají pro projekt vytvořit. Výchozí možnost (/ZI) vytvoří programovou databázi (PDB) ve formátu kompatibilním s možnostmi Upravit a pokračovat. Další informace naleznete v tématu /Z7, /Zd, /Zi, /ZI (formát informací o ladění). |
Složka C/C++ (kategorie optimalizace)
Nastavení | Popis |
---|---|
Optimalizace | Určuje, jestli má kompilátor optimalizovat kód, který vytvoří. Optimalizace změní spuštěný kód. Optimalizovaný kód už neodpovídá zdrojovému kódu, což ztěžuje ladění. Výchozí možnost (Zakázáno (/0d)) potlačí optimalizaci. Můžete vyvíjet s potlačenou optimalizací a pak ho zapnout při vytváření produkční verze kódu. |
Složka Linker (kategorie ladění)
Nastavení | Popis |
---|---|
Generování informací o ladění (/DEBUG) | Říká linkeru, aby zahrnoval ladicí informace, které budou mít formát určený parametrem /Z7, /Zd, Zi nebo /ZI. |
Vygenerovat soubor databáze programu (/PDB:name) | Do tohoto pole zadejte název souboru databáze programu (PDB). Pro formát informací o ladění je nutné vybrat ZI nebo /Zi. |
Odstranění privátních symbolů (/PDBSTRIPPED:filename) | Do tohoto pole zadejte název souboru PDB, pokud nechcete do souboru PDB zahrnout soukromé symboly. Tato možnost vytvoří druhý soubor PDB při sestavování image programu s libovolnými možnostmi kompilátoru nebo linkeru, které generují soubor PDB, například /DEBUG, /Z7, /Zd. Nebo /Zi. Tento druhý soubor PDB vynechá symboly, které nechcete dodávat svým zákazníkům. Další informace naleznete v tématu /PDBSTRIPPED (strip private symbols). |
Vygenerovat soubor mapy (/MAP) | Řekne linkeru, aby během propojení vygeneroval soubor mapy. Výchozí nastavení je Ne. Další informace naleznete v tématu /MAP (generování souboru mapování). |
Název souboru mapování (/MAP:name) | Pokud zvolíte Vygenerovat mapový soubor, můžete v tomto poli zadat soubor mapy. Další informace naleznete v tématu /MAP (generování souboru mapování). |
Exporty map (/MAPINFO:EXPORT) | Zahrnuje exportované funkce do souboru mapy. Výchozí nastavení je Ne. Další informace naleznete v tématu /MAPINFO (zahrnutí informací do souboru map). |
Laditelné sestavení (/ASSEMBLYDEBUG) | Určuje nastavení pro možnost Linker /ASSEMBLYDEBUG. Možné hodnoty jsou: - Nevygenerovaný žádný laditelný atribut. - Sledování modulu runtime a zakázání optimalizací (/ASSEMBLYDEBUG) Toto je výchozí nastavení. - Žádné sledování za běhu a povolení optimalizace(/ASSEMBLYDEBUG:DISABLE). - <dědí z výchozích> hodnot nadřazeného projektu nebo projektu. - Další informace naleznete v tématu /ASSEMBLYDEBUG (přidat DebuggableAttribute). |
Tato nastavení můžete změnit ve složce Vlastnosti konfigurace (kategorie Ladění) programově pomocí rozhraní Microsoft.VisualStudio.VCProjectEngine.VCDebug Nastavení. Další informace najdete na webu VCDebugSettings.
Další nastavení projektu
Pokud chcete ladit typy projektů, jako jsou statické knihovny a knihovny DLL, musí být váš projekt sady Visual Studio schopen najít správné soubory. Pokud je zdrojový kód k dispozici, můžete do stejného řešení přidat statické knihovny a knihovny DLL jako samostatné projekty, aby se ladění usnadnilo. Informace o vytváření těchto typů projektů naleznete v tématu Vytvoření a použití knihovny DLL (Dynamic Link Library) a Vytvoření pomocí statické knihovny. S dostupným zdrojovým kódem můžete také vytvořit nový projekt sady Visual Studio tak, že zvolíte Soubor>nový>projekt z existujícího kódu.
Ladění knihoven DLL, které jsou pro váš projekt externí, naleznete v tématu Ladění projektů knihovny DLL. Pokud potřebujete ladit vlastní projekt knihovny DLL, ale nemáte přístup k projektu pro volající aplikaci, přečtěte si téma Postup ladění z projektu knihovny DLL.