Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Když nastavíte vlastnosti projektu v integrovaném vývojovém prostředí a pak projekt uložíte, Visual Studio zapíše nastavení projektu do souboru projektu. Soubor projektu obsahuje nastavení, která jsou jedinečná pro váš projekt. Neobsahuje ale všechna nastavení potřebná k sestavení projektu. Soubor projektu obsahuje Import prvky, které obsahují síť dalších podpůrných souborů. Soubory podpory obsahují zbývající vlastnosti, cíle a nastavení potřebné k sestavení projektu.
Většina cílů a vlastností v souborech podpory existuje výhradně k implementaci systému sestavení. Tento článek popisuje užitečné cíle a vlastnosti, které můžete zadat na příkazovém řádku MSBuild. Pokud chcete zjistit další cíle a vlastnosti, prozkoumejte soubory v adresářích souborů podpory.
Podpora adresářů souborů
Ve výchozím nastavení se primární podpůrné soubory sady Visual Studio nacházejí v následujících adresářích. Tyto informace jsou specifické pro verzi.
Visual Studio 2022 a 2019
%VSINSTALLDIR%MSBuild\Microsoft\VC\<version>\Obsahuje primární cílové soubory (
.targets) a soubory vlastností (.props), které jsou používány cíli. Ve výchozím nastavení$(VCTargetsPath)makro odkazuje na tento adresář. Zástupný<version>symbol odkazuje na verzi sady Visual Studio: v170 pro Visual Studio 2022, v160 pro Visual Studio 2019 nebo v150 pro Visual Studio 2017.%VSINSTALLDIR%MSBuild\Microsoft\VC\<version>\Platforms\<platform>\Obsahuje soubory cílů a vlastností specifické pro platformu, které přepíší cíle a vlastnosti v nadřazeném adresáři. Tento adresář obsahuje také knihovnu DLL, která definuje úlohy, které jsou používány cíli v tomto adresáři. Zástupný
<platform>symbol představuje podadresář ARM, ARM64, Win32 nebo x64.%VSINSTALLDIR%MSBuild\Microsoft\VC\<version>\Platforms\<platform>\PlatformToolsets\<toolset>\Obsahuje adresáře, které umožňují sestavení generovat aplikace jazyka C++ pomocí zadané
<toolset>. Zástupný<platform>symbol představuje podadresář ARM, ARM64, Win32 nebo x64. Zástupný<toolset>symbol představuje podadresář sady nástrojů.
Visual Studio 2017
%VSINSTALLDIR%Common7\IDE\VC\VCTargets\Obsahuje primární cílové soubory (
.targets) a soubory vlastností (.props), které jsou používány cíli. Ve výchozím nastavení$(VCTargetsPath)makro odkazuje na tento adresář.%VSINSTALLDIR%Common7\IDE\VC\VCTargets\Platforms\<platform>\Obsahuje soubory cílů a vlastností specifické pro platformu, které přepíší cíle a vlastnosti v nadřazeném adresáři. Tento adresář obsahuje také knihovnu DLL, která definuje úlohy, které jsou používány cíli v tomto adresáři. Zástupný
<platform>symbol představuje podadresář ARM, ARM64, Win32 nebo x64.%VSINSTALLDIR%Common7\IDE\VC\VCTargets\Platforms\<platform>\PlatformToolsets\<toolset>\Obsahuje adresáře, které umožňují sestavení generovat aplikace jazyka C++ pomocí zadané
<toolset>. Zástupný<platform>symbol představuje podadresář ARM, Win32 nebo x64. Zástupný<toolset>symbol představuje podadresář sady nástrojů.
Visual Studio 2015 a starší
<drive>:\Program Files[ (x86)]\MSBuild\Microsoft.Cpp\v4.0\<version>\Obsahuje primární cílové soubory (
.targets) a soubory vlastností (.props), které jsou používány cíli. Ve výchozím nastavení odkazuje makro $(VCTargetsPath) na tento adresář.<drive>:\Program Files[ (x86)]\MSBuild\Microsoft.Cpp\v4.0\<version>\Platforms\<platform>\Obsahuje soubory cílů a vlastností specifické pro platformu, které přepíší cíle a vlastnosti v nadřazeném adresáři. Tento adresář obsahuje také knihovnu DLL, která definuje úlohy, které jsou používány cíli v tomto adresáři. Zástupný
<platform>symbol představuje podadresář ARM, Win32 nebo x64.<drive>:\Program Files[ (x86)]\MSBuild\Microsoft.Cpp\v4.0\<version>\Platforms\<platform>\PlatformToolsets\<toolset>\Obsahuje adresáře, které umožňují sestavení generovat aplikace jazyka C++ pomocí zadané
<toolset>. Zástupný<version>symbol je V110 pro Visual Studio 2012, V120 pro Visual Studio 2013 a V140 pro Visual Studio 2015. Zástupný<platform>symbol představuje podadresář ARM, Win32 nebo x64. Zástupný<toolset>symbol představuje podadresář sady nástrojů. Například se jedná o verzi 140 pro vytváření aplikací pro Windows pomocí sady nástrojů sady Visual Studio 2015. Nebo v120_xp sestavit pro Windows XP pomocí sady nástrojů sady Visual Studio 2013.<drive>:\Program Files[ (x86)]\MSBuild\Microsoft.Cpp\v4.0\Platforms\<platform>\PlatformToolsets\<toolset>\Cesty, které umožňují sestavení vygenerovat aplikace sady Visual Studio 2008 nebo Visual Studio 2010, nezahrnují
<version>. V těchto verzích<platform>zástupný symbol představuje podadresář Itanium, Win32 nebo x64. Zástupný<toolset>symbol představuje podadresář sady nástrojů v90 nebo v100.
Soubory podpory
Adresáře souborů podpory obsahují soubory s těmito příponami:
| Rozšíření | Popis |
|---|---|
.targets |
Obsahuje Target elementy XML, které určují úkoly, které jsou spouštěné cílem. Může obsahovat PropertyGrouptaké prvky , , ItemGroupItemDefinitionGroupa uživatelem definované Item prvky, které slouží k přiřazení souborů a možností příkazového řádku k parametrům úkolu.Další informace naleznete v tématu Target Element (MSBuild). |
.props |
Obsahuje Property Group a uživatelem definované Property elementy XML, které určují nastavení souboru a parametrů, které se používají během sestavení.Může také obsahovat ItemDefinitionGroup a uživatelem definované Item elementy XML, které určují další nastavení. Položky definované ve skupině definic položek se podobají vlastnostem, ale z příkazového řádku se nedají získat přístup. Soubory projektu sady Visual Studio často používají položky místo vlastností k reprezentaci nastavení.Další informace naleznete v tématu ItemGroup, ItemDefinitionGroup a Item. |
.xml |
Obsahuje elementy XML, které deklarují a inicializují prvky uživatelského rozhraní IDE. Například seznamy vlastností, stránky vlastností, ovládací prvky textového pole a ovládací prvky seznamu. Soubory .xml přímo podporují integrované vývojové prostředí (IDE), nikoli MSBuild. Hodnoty vlastností integrovaného vývojového prostředí jsou však přiřazeny k vlastnostem sestavení a položkám.Většina .xml souborů je v podadresáři specifické pro národní prostředí. Například soubory pro oblast Angličtina-USA jsou v $(VCTargetsPath)\1033\. |
Cíle a vlastnosti uživatele
Chcete-li efektivně používat NÁSTROJ MSBuild, pomáhá zjistit, které vlastnosti a cíle jsou užitečné a relevantní. Většina vlastností a cílů pomáhá implementovat systém sestavení sady Visual Studio a není pro uživatele relevantní. Tato část popisuje uživatelsky orientované vlastnosti a cíle, o které stojí za to vědět.
PlatformToolset vlastnost
Vlastnost PlatformToolset určuje, která sada nástrojů Microsoft C++ (MSVC) se používá v sestavení. Ve výchozím nastavení se používá aktuální sada nástrojů. Pokud je tato vlastnost nastavena, její hodnota se zřetězení s literálovými řetězci vytvoří cestu. Je to adresář, který obsahuje vlastnost a cílové soubory potřebné k sestavení projektu pro konkrétní platformu. Sada nástrojů platformy musí být nainstalovaná k sestavení pomocí této verze sady nástrojů platformy.
Například nastavte PlatformToolset vlastnost tak, aby v140 k sestavení aplikace používala nástroje a knihovny sady Visual Studio 2015:
msbuild myProject.vcxproj /p:PlatformToolset=v140
PreferredToolArchitecture vlastnost
Vlastnost PreferredToolArchitecture určuje, zda se v sestavení používají 32bitové nebo 64bitové kompilátory a nástroje. Tato vlastnost nemá vliv na architekturu ani konfiguraci výstupní platformy. Ve výchozím nastavení nástroj MSBuild používá verzi kompilátoru a nástrojů x86, pokud tato vlastnost není nastavena.
Například nastavte PreferredToolArchitecture vlastnost na x64 použití 64bitového kompilátoru a nástrojů k sestavení aplikace:
msbuild myProject.vcxproj /p:PreferredToolArchitecture=x64
UseEnv vlastnost
Ve výchozím nastavení přepíší PATHnastavení specifická pro platformu pro aktuální projekt proměnné , INCLUDE, LIBLIBPATH, CONFIGURATION, a PLATFORM prostředí.
UseEnv Nastavte vlastnost tak, aby true se zajistilo, že proměnné prostředí nebudou přepsány.
msbuild myProject.vcxproj /p:UseEnv=true
Cíle
V souborech podpory sady Visual Studio jsou stovky cílů. Většina je ale cíle orientovaných na systém, které může uživatel ignorovat. Většina systémových cílů má předponu podtržítka (_) nebo má název začínající znakem PrepareFor, , Compute, Before, Afternebo PrePost.
Následující tabulka uvádí několik užitečných uživatelsky orientovaných cílů.
| Cíl | Popis |
|---|---|
BscMake |
Spustí nástroj Microsoft Browse Information Maintenance Utility , bscmake.exe. |
Build |
Vytvoří projekt. Tento cíl je výchozí pro projekt. |
ClCompile |
Spustí nástroj kompilátoru MSVC . cl.exe |
Clean |
Odstraní dočasné a přechodné soubory sestavení. |
Lib |
Spustí nástroj Microsoft 32-Bit Library Manager , lib.exe. |
Link |
Spustí nástroj linkeru MSVC . link.exe |
ManifestResourceCompile |
Extrahuje seznam prostředků z manifestu a potom spustí nástroj Microsoft Windows Resource Compiler , rc.exe. |
Midl |
Spustí nástroj midl.exekompilátoru MIDL (Microsoft Interface Definition Language) . |
Rebuild |
Vyčistí a pak sestaví váš projekt. |
ResourceCompile |
Spustí nástroj Microsoft Windows Resource Compiler , rc.exe. |
XdcMake |
Spustí nástroj xdcmake.exedokumentace XML . |
Xsd |
Spustí nástroj definice schématu XML . xsd.exe
Viz poznámka. |
Poznámka:
V sadě Visual Studio 2017 a novějších je podpora projektu C++ pro .xsd soubory zastaralá. Stále můžete použít Microsoft.VisualC.CppCodeProvider přidáním CppCodeProvider.dll ručně do GAC.
Viz také
Referenční dokumentace úlohy MSBuild
BscMake úkol
CL úkol
CPPClean úkol
LIB úkol
Link úkol
MIDL úkol
MT úkol
RC úkol
SetEnv úkol
VCMessage úkol
XDCMake úkol