C'è una proprietà $OutDir
, che è possibile utilizzare in cose come eventi post-build.
In una build VS2010, sarà un percorso relativo dal progetto corrente ai binari, quindi sarà "bin \ Debug \", ad esempio. (Il percorso completo dell'output è $ TargetDir, che è $ (ProjectDir) \ $ (Outdir)).
$ OutDir viene sovrascritto durante TFS build per indicare il percorso in cui si mette i binari:
<OutDir Condition=" '%(ConfigurationToBuild.PlatformToBuild)' != 'Any CPU' ">$(BinariesRoot)\%(ConfigurationToBuild.PlatformToBuild)\%(ConfigurationToBuild.FlavorToBuild)\</OutDir>
<OutDir Condition=" '%(ConfigurationToBuild.PlatformToBuild)' == 'Any CPU' ">$(BinariesRoot)\%(ConfigurationToBuild.FlavorToBuild)\</OutDir>
EDIT:
Per ottenere un percorso completo in entrambi i casi, una possibilità che si potrebbe usare è qualcosa del genere:
IF '$(BuildingInsideVisualStudio)'=='true' (
COPY SomeFile $(TargetDir)$(OutDir)
) ELSE (
COPY SomeFile $(OutDir)
)
fonte
2012-02-03 18:16:13
Ma outdir è relativo. Mi piacerebbe davvero un percorso completo. Se nella tua soluzione sono presenti progetti in sottodirectory, un percorso relativo diventa difficile da utilizzare. – Vaccano
Non sono sicuro di dove sia necessario utilizzare questa proprietà, quindi è difficile dare una risposta migliore; in un evento post-build, ad esempio, la proprietà sarà relativa a qualunque progetto sia in esecuzione. Aggiornerò la mia risposta con un modo per ottenere un percorso completo in entrambi i casi. –