MenüHomeBlogMagic

vcxproj Condition for PostBuildEvent

Beim entwickeln muss man oftmals im Nachgang noch Sachen erledigen, wie kopieren signieren oder ähnliches.
Dies kann man in den Build-Events individuell einstellen.

Es gibt aber auch situationen bei denen eine allgemein Gültige Aktion für alle Projekte ausgeführt werden, die man nicht jedes mal neu aufsetzen, sondern nur kopieren möchte. In meinem Fall soll bei allen Projekten die eine Dll oder oder lib baut ein tool ausgefürt werden.

Dazu wird in der vcxproj Datei folgendes hinzugefügt:

<PostBuildEvent>
  <Command Condition="$(TargetPath.EndsWith(`.lib`)) Or $(TargetPath.EndsWith(`.dll`))">"%PathToTool%\bin\Tool.exe" "$(TargetPath)"</Command>
  <Message>Run Custom Tool</Message>
</PostBuildEvent>

Das commando das ausgeführt wird, überprüft im Vorfeld ob die Ausgabe der Datei auf dll oder lib endet.