Copia tutti i file e le cartelle usando msbuild

Mi chiedo solo se qualcuno potrebbe aiutarmi con alcuni script di msbuild che sto cercando di scrivere. Quello che mi piacerebbe fare è copiare tutti i file e sottocartelle da una cartella in un’altra cartella usando msbuild.

{ProjectName} |----->Source |----->Tools |----->Viewer |-----{about 5 sub dirs} 

Quello che devo essere in grado di fare è copiare tutti i file e le sottocartelle dalla cartella degli strumenti nella cartella di debug dell’applicazione. Questo è il codice che ho finora.

      '$(OutputPath)\\Tools')" />  

Lo script di compilazione viene eseguito ma non copia nessuno dei file o delle cartelle.

Grazie

Stavo cercando aiuto anche su questo. Mi ci è voluto un po ‘, ma ecco cosa ho fatto che ha funzionato molto bene.

       

Questo ha ricorsivamente copiato il contenuto della cartella denominata antlrcs in $(TargetDir) .

Penso che il problema potrebbe essere nel modo in cui stai creando il tuo gruppo di oggetti e chiamando l’attività di copia. Guarda se questo ha senso:

   ..\SomeDestinationDirectory ..\SomeSourceDirectory         

Sono un po ‘nuovo a MSBuild, ma trovo il task EXEC a portata di mano per situazioni come queste. Ho incontrato la stessa sfida nel mio progetto e questo ha funzionato per me ed è stato molto più semplice. Qualcuno, per favore, fammi sapere se non è una buona pratica.

    
   ..\SomeDestinationDirectory ..\SomeSourceDirectory         

\**\*.* aiuto per ottenere file da tutta la cartella. RecursiveDir aiuta a mettere tutto il file nella rispettiva cartella …

Hai provato a specificare la directory di destinazione concreta anziché

 DestinationFolder="@(Viewer->'$(OutputPath)\\Tools')" ? 

Non sono molto abile con la syntax avanzata di MSBuild, ma

 @(Viewer->'$(OutputPath)\\Tools') 

sembra strano per me. Lo script sembra buono, quindi il problema potrebbe essere nei valori di $(ApplicationDirectory) e $(OutputPath)

MODIFICARE:

Ecco un post del blog che potrebbe essere utile:

Procedura: copiare ricorsivamente i file utilizzando l’attività

Questo è l’esempio che ha funzionato:

         

fonte: https://msdn.microsoft.com/en-us/library/3e54c37h.aspx

Personalmente ho fatto uso di CopyFolder che fa parte della libreria di attività di SDC.

http://sdctasks.codeplex.com/

Questo è il compito di copia che ho usato nel mio progetto, funzionava perfettamente per me che copia correttamente la cartella con le sottocartelle verso la destinazione:

      

Nel mio caso ho copiato la cartella di pubblicazione di un progetto in un’altra cartella di destinazione, penso che sia simile al tuo caso.