2009-06-24 15 views

cevap

4

ben bu en zarif çözüm olduğunu, ama biz çözeltide bir klasör oluşturarak, eskisinden yaptıklarını ve hissetmiyorum placeholder.txt veya buna benzer adlı bir metin dosyası ve yapıya eklenecek metin dosyasının özelliklerini ayarlama. Sonuç, istemediğiniz bir dosyayı içermesini istediğiniz bir klasördür. Daha sonra, derleme yapmadan önce, build komut dosyasının içindeki placeholder.txt dosyasını sileriz.

Zarif değil, bizim senaryo için iş yapıyor.

1

. Boş klasörleri de dahil olmak üzere kopyalamaya çalıştığınız ağacın tamamını yansıtacak argümanı/MIR'yi belirleyebilirsiniz.

Örnek:

<Exec Command="robocopy &quot;$(SourceLocation)\&quot; &quot;$(TargetLocation)\&quot; /MIR" IgnoreExitCode="true" /> 

Benzer şekilde, boş klasörlerle zip ulaşmak için bir komut satırı arayüzü var bir sıkıştırma programı çağırmak için bir exec görevi kullanabilirsiniz.

0

O biraz zor olabilir, ama ben tüm dosya ve klasörleri ortak bir kök varsa çalıştığını düşünmek ve joker kullanmadan kök klasörü zip (sadece kullanarak ''):

<PropertyGroup> 
    <SourcePath>.\path\to\rootFolder</SourcePath> 
    <FinalZipFileName>.\path\to\destination\myzip.zip</FinalZipFileName> 
</PropertyGroup> 

<Target Name="MyApplicationZip" > 
    <Zip ZipFileName="$(FinalZipFileName)" WorkingDirectory="$(SourcePath)" Files="$(SourcePath)\." ZipLevel="9" /> 
</Target>