2010-10-05 10 views
6

ho un obiettivo msbuild e ha un tag di importazione come questo:MsBuild: Get directory corrente di obiettivi

<Import Project="$(MSBuildExtensionsPath)\Company\Company.LifeCycle.targets" /> 

Nel contenuto del file di Company.LifeCycle.targets, come posso ottenere programatically la directory corrente (in questo caso è: C: \ Programmi \ MsBuild \ Company ??

Io uso VS 2008, .NET 3.5

Edit: Ho visto il riferimento, How can I get current directory in msbuild script?, ma non vale per me: $ (MSBuildProjectDirectory dammi questo valore, C: \ Work \ Azienda \ Projects \ Test001 \ ProyectSW3

risposta

2

la tua domanda è già stata risolta in un altro post qui:.. MsBuild: Get current directory of targets Spero che le risposte ci si soddisfano

si può tranquillamente utilizzare MSBuildProjectDirectory che vi darà il percorso del file di progetto corrente e può costruire su quello.

8

Con MSBuild 4 è possibile utilizzare la nuova proprietà 'MSBuildThisFileDirectory' vedere il mio blog http://sedodream.com/2010/03/11/MSBuild40ReservedProperties.aspx. Se non si utilizza MSBuild 4, non è possibile farlo facilmente.

+0

Uso msbuild 3.5; codice sorgente non disponibile per ottenere la nuova proprietà 'MSBuildThisFileDirectory' come Attività della community di MsBuild o altre estensioni in codeplex ?? – Kiquenet

+1

No questo è un aggiornamento di MSBuild stesso. Invece di ottenere il percorso che deve essere passato attraverso una proprietà. –

+0

@SayedIbrahimHashimi, il tuo blog non è esattamente chiaro su come eseguire il progetto di esempio lì per vedere le proprietà riservate. –

Problemi correlati