2012-02-24 8 views
2

多数の* .xmlファイルを含むフォルダがあります。MsBuildディレクトリ内のすべてのファイルを別々のZipファイルで圧縮する

これらのファイルはすべて、別々のzipファイルでそれぞれ圧縮する必要があります。 file3.xml

MSBuildの後

file1.xml - - - file2.xml :例

- file1.zip - file2.zip - file3.zip

なお、I 1つのZIP内のすべてのファイルを圧縮する必要はなく、フォルダ内の.xmlファイルの数は毎回変わります。

自動化されたmsbuildタスクでこれを行うにはどうしてですか?

ありがとうございます。

答えて

3

からZip taskを使用してください。次に、MSBuildターゲットは次のようになります。

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="ZipFiles"> 

    <UsingTask TaskName="MSBuild.ExtensionPack.Compression.Zip" 
      AssemblyFile="..\MSBuildExtensionPack\Releases\4.0.4.0\MSBuild.ExtensionPack.dll" /> 

    <Target Name="ZipFiles"> 
    <ItemGroup> 
     <FilesToZip Include="xmls\**\*.xml"/> 
    </ItemGroup> 

    <Message Text="Zipping '%(FilesToZip.Identity)'" Importance="high" /> 
    <MSBuild.ExtensionPack.Compression.Zip TaskAction="Create" 
              CompressFiles="%(FilesToZip.FullPath)" 
              ZipFileName="%(FilesToZip.Filename).zip" 
              RemoveRoot="%(FilesToZip.RootDir)%(FilesToZip.Directory)" /> 

    </Target> 

</Project> 
+0

優れています。ありがとうKMoraz! –

関連する問題