2009-04-22 10 views
20

Aşağıdaki Deprem Dizinini VersionSpecificDirectory öğesine kopyalayan aşağıdaki msbuild komut dosyasına sahibim.msbuild kopyalama görevi ile klasör yapısı nasıl belirtilir

<CreateItem Include="$(DeploymentDirectory)/**/*.*" > 
    <Output ItemName="AllDeploymentFilesToCopy" TaskParameter="Include" /> 
</CreateItem> 
<Copy SourceFiles="@(AllDeploymentFilesToCopy)" 
     DestinationFiles="@(AllDeploymentFilesToCopy->'$(VersionSpecificDirectory)\%(RecursiveDir)%(Filename)%(Extension)')" /> 

komut DeploymentDirectory yerine dizindeki kendisi tüm dosyaları kopyalamak için ne olurdu: Burada snippet'tir?

Güncelleme: Bir eğik çizgi olmak için eğik çizginin yönünü değiştirmeyi denedim ve sorun hala devam ediyor.

Başka bir güncelleştirme: Bu msbuild koduyla ilgisizdi. Hem benim soruma giren kod hem de cevaptaki kod bunu yapmak için iyi çalışıyor.

cevap

33

bu deneyin: MSDN itibaren

<ItemGroup> 
    <MySourceFiles Include="c:\MySourceTree\**\*.*"/> 
</ItemGroup> 

<Target Name="CopyFiles"> 
    <Copy 
     SourceFiles="@(MySourceFiles)" 
     DestinationFiles="@(MySourceFiles->'c:\MyDestinationTree\%(RecursiveDir)%(Filename)%(Extension)')" 
    /> 
</Target> 

.