Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Een build-gebeurtenis is een opdracht die MSBuild uitvoert in een bepaalde fase in het buildproces. De pre-build gebeurtenis vindt plaats voordat de build wordt gestart; de pre-link gebeurtenis vindt plaats voordat de koppelingsstap begint; en de post-build gebeurtenis vindt plaats nadat de build succesvol is beƫindigd. Een build-gebeurtenis vindt alleen plaats als de bijbehorende buildstap plaatsvindt. De gebeurtenis vooraf koppelen vindt bijvoorbeeld niet plaats als de koppelingsstap niet wordt uitgevoerd.
Elk van de drie buildgebeurtenissen wordt weergegeven in een itemdefinitiegroep door een opdrachtelement (<Command>) dat wordt uitgevoerd en een berichtelement (<Message>) dat wordt weergegeven wanneer MSBuild de build-gebeurtenis uitvoert. Elk element is optioneel en als u hetzelfde element meerdere keren opgeeft, heeft het laatste exemplaar voorrang.
Een optioneel use-in-build-element (<build-eventUseInBuild>) kan worden opgegeven in een eigenschapsgroep om aan te geven of de buildgebeurtenis wordt uitgevoerd. De waarde van de inhoud van een use-in-build-element is true of false. Standaard wordt een buildgebeurtenis uitgevoerd, tenzij het bijbehorende use-in-build-element is ingesteld op false.
De volgende tabel bevat elk XML-element voor build-gebeurtenissen:
| XML-element | Beschrijving |
|---|---|
PreBuildEvent |
Deze gebeurtenis wordt uitgevoerd voordat de build begint. |
PreLinkEvent |
Deze gebeurtenis wordt uitgevoerd voordat de koppelingsstap begint. |
PostBuildEvent |
Deze gebeurtenis wordt uitgevoerd nadat de build is voltooid. |
De volgende tabel bevat elk use-in-build-element :
| XML-element | Beschrijving |
|---|---|
PreBuildEventUseInBuild |
Hiermee geeft u op of de pre-buildgebeurtenis moet worden uitgevoerd. |
PreLinkEventUseInBuild |
Hiermee geeft u op of het voorkoppelingsevent moet worden uitgevoerd. |
PostBuildEventUseInBuild |
Hiermee geeft u op of de gebeurtenis na de build moet worden uitgevoerd. |
Voorbeeld
Het volgende voorbeeld kan worden toegevoegd in het Project-element van het myproject.vcxproj-bestand dat is gemaakt in Walkthrough: MSBuild gebruiken om een C++-project te maken. Een voor-buildgebeurtenis maakt een kopie van main.cpp; een voor-linkgebeurtenis maakt een kopie van main.obj; en een na-buildgebeurtenis maakt een kopie van myproject.exe. Als het project is gebouwd met behulp van een releaseconfiguratie, worden de buildgebeurtenissen uitgevoerd. Als het project is gebouwd met behulp van een foutopsporingsconfiguratie, worden de buildgebeurtenissen niet uitgevoerd.
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)main.cpp $(ProjectDir)copyOfMain.cpp</Command>
<Message>Making a copy of main.cpp </Message>
</PreBuildEvent>
<PreLinkEvent>
<Command>copy $(ProjectDir)$(Configuration)\main.obj $(ProjectDir)$(Configuration)\copyOfMain.obj</Command>
<Message>Making a copy of main.obj</Message>
</PreLinkEvent>
<PostBuildEvent>
<Command>copy $(ProjectDir)$(Configuration)\$(TargetFileName) $(ProjectDir)$(Configuration)\copyOfMyproject.exe</Command>
<Message>Making a copy of myproject.exe</Message>
</PostBuildEvent>
</ItemDefinitionGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<PreBuildEventUseInBuild>true</PreBuildEventUseInBuild>
<PreLinkEventUseInBuild>true</PreLinkEventUseInBuild>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<PreBuildEventUseInBuild>false</PreBuildEventUseInBuild>
<PreLinkEventUseInBuild>false</PreLinkEventUseInBuild>
<PostBuildEventUseInBuild>false</PostBuildEventUseInBuild>
</PropertyGroup>
Zie ook
MSBuild op de opdrachtregel - C++
Walkthrough: MSBuild gebruiken om een C++-project te maken