Delen via


MSBuild op de opdrachtregel - C++

Over het algemeen raden we u aan Visual Studio te gebruiken om projecteigenschappen in te stellen en het MSBuild-systeem aan te roepen. U kunt echter de MSBuild tool rechtstreeks vanaf de opdrachtprompt gebruiken. Het buildproces wordt beheerd door de informatie in een projectbestand (.vcxproj) die u kunt maken en bewerken. In het projectbestand worden buildopties opgegeven op basis van buildfasen, voorwaarden en gebeurtenissen. Daarnaast kunt u nul of meer opdrachtregeloptiesargumenten opgeven.

msbuild.exe [ project_file ] [ opties ]

Gebruik de opdrachtregelopties /target (of /t) en /property (of /p) om specifieke eigenschappen en doelen te overschrijven die zijn opgegeven in het projectbestand.

Een essentiële functie van het projectbestand is het opgeven van een doel, een bepaalde bewerking die op uw project wordt toegepast, en de invoer en uitvoer die nodig zijn om die bewerking uit te voeren. Een projectbestand kan een of meer doelen opgeven, die een standaarddoel kunnen bevatten.

Elk doel bestaat uit een reeks van een of meer taken. Elke taak wordt vertegenwoordigd door een .NET Framework-klasse die één uitvoerbare opdracht bevat. De CL-taak bevat bijvoorbeeld de opdrachtcl.exe .

Een taakparameter is een eigenschap van de klassetaak en vertegenwoordigt doorgaans een opdrachtregeloptie van de uitvoerbare opdracht. De parameter van de FavorSizeOrSpeed taak komt bijvoorbeeld CL overeen met de opties /Os en /Ot compiler.

Aanvullende taakparameters ondersteunen de MSBuild-infrastructuur. Met de Sources taakparameter wordt bijvoorbeeld een set taken opgegeven die door andere taken kunnen worden gebruikt. Zie Taakreferentie voor meer informatie over MSBuild-taken.

De meeste taken vereisen invoer en uitvoer, zoals bestandsnamen, paden en tekenreeksen, numerieke of Booleaanse parameters. Een algemene invoer is bijvoorbeeld de naam van een .cpp bronbestand dat moet worden gecompileerd. Een belangrijke invoerparameter is een tekenreeks waarmee de buildconfiguratie en het platform worden opgegeven, bijvoorbeeld 'Fouten opsporen|Win32". Invoer en uitvoer worden opgegeven door een of meer door de gebruiker gedefinieerde XML-elementen Item in een ItemGroup element.

Een projectbestand kan ook door de gebruiker gedefinieerde eigenschappen en ItemDefinitionGroupitems opgeven. Eigenschappen en items vormen naam-waardeparen die kunnen worden gebruikt als variabelen in het build-proces. Het naamonderdeel van een paar definieert een macro en het waardeonderdeel declareert de macrowaarde. Een eigenschapsmacro wordt geopend met behulp van de notatie $(naam) en een itemmacro wordt geopend met behulp van %(naam) notatie.

Andere XML-elementen in een projectbestand kunnen macro's testen en vervolgens de waarde van een macro voorwaardelijk instellen of de uitvoering van de build beheren. Macronamen en letterlijke tekenreeksen kunnen worden samengevoegd om constructies te genereren, zoals een pad en bestandsnaam. In de opdrachtregel kan met de optie /property een projecteigenschap worden ingesteld of overschreven. Het is niet mogelijk om op de opdrachtregel naar items te verwijzen.

Het MSBuild-systeem kan voorwaardelijk een doel uitvoeren voor of na een ander doel. Het systeem kan ook een doel bouwen op basis van of de bestanden die het doel verbruikt nieuwer zijn dan de bestanden die het verzendt.

Zie voor meer informatie over MSBuild:

In deze sectie

Termijn Definitie
Walkthrough: MSBuild gebruiken om een C++-project te maken Demonstreert hoe u een Visual Studio C++-project maakt met behulp van MSBuild.
Procedure: Build-gebeurtenissen gebruiken in MSBuild Projects Demonstreert hoe u een actie opgeeft die plaatsvindt in een particuliere fase in de build: voordat de build begint; voordat de koppelingsfase begint; of nadat de build is beëindigd.
Hoe een aangepaste buildstap toe te voegen aan MSBuild-projecten Demonstreert hoe u een door de gebruiker gedefinieerde fase toevoegt aan de buildreeks.
Procedure: Aangepaste buildhulpprogramma's toevoegen aan MSBuild Projects Demonstreert hoe u een build-hulpprogramma koppelt aan een bepaald bestand.
Procedure: Aangepaste hulpprogramma's integreren in de projecteigenschappen Demonstreert hoe u opties voor een aangepast hulpprogramma toevoegt aan de projecteigenschappen.
Hoe de doelframework en platformtoolset te wijzigen Demonstreert hoe u een project compileert voor meerdere frameworks of toolsets.

Zie ook

De MSVC-toolset vanaf de opdrachtregel gebruiken