This is v1.6 of DotNetZip. For the current release, see http://dotnetzip.codeplex.com/Release/ProjectReleases.aspx
This release has these downloads:
- DotNetzip-src-v1.6.x.x.zip - the source code for the Zip Library, the setup (msi) project, and a bunch of examples. Download this if you want to play with the library, extend the example utilities, or perhaps modify and embed it into your own application.
- DotNetZipLib-Runtime-v1.6.zip - a binary release, that includes of the signed Zip Library (DLL), and the License. Download this if you want to distribute .NET applications that use the Zip library, or if you want to run a .NET application that depends on this library.
- DotNetZipLib-DevKit-v1.6.zip - a binary release, that includes of the signed Zip Library (DLL), the XML Documentation file for intellisense, the compiled help file (CHM), and the License. Download this if you want to build .NET applications that use the Zip library.
- DotNetZipUtils-v1.6.zip - a set of exe tools (command-line and GUI) that rely on the library. zipit (Creates zips), unzip (obvious), and CreateSelfExtractor.exe (creates self extracting zips). Plus the Winforms Zip creator. Download this if you want command-line and gui tools to manipulate zip files.
- DotNetZipUtils-v1.6.msi - an installer for Windows for the Zip utilities that utilize the library. This is the same stuff as the DotNetZipUtils-v1.6.zip, but in MSI form.
- DotNetZipLib-v1.6.chm - the help file.
Major new features:
- workitem 3152 - filenames/comments in Unicode or any codepage. Also updated the WinForms Zip creator tool to do unicode.
- workitem 4698 - add the AllowPartiallyTrustedCallersAttribute, to allow this DLL in partial trust situations, for example where your ASP.NET host specifies "medium" trust on your website.
- workitem 5442- new method ZipEntry.OpenReader() allows applications to read an entry directly from the zip stream.
- workitem 5506 - new static method ZipFile.IsZipFile() to test a file to see if it appears to be a valid zip file.
- workitem 5792 - events & cancel for ExtractAll
- workitem 5724 - FxCop compliance in the source code. Well, a little, anyway.
- workitem 5740 - changed the string indexer on ZipFile to use case-insensitive comparisons
- workitem 5671 - AddDirectoryByName method on ZipFile
- workitem 5829 - delegate to check if reading a stream twice is ok
- Updated the self-extractor UI to be more pleasant and adaptive. Long comments are shown correctly.
- ExtractAll and Extract methods on ZipFile now implicitly use the password set on the ZipFile instance.
- use the generic EventHandler model.
- lots of doc updates.
fixes (workitem noted where appropriate):
- 5028 - intelligently handle large files via streaming
- 5043 - added exception handling in Save(); no more temp files when an exception occurs.
- 5722 - fixed a NPE problem with password-protected files of zero length.
- 5558 - Fixed SaveProgress event so that it actually responds to a Cancel request. Also added a working winforms example to demonstrate this.
- 5593 - Handle the case where Extract() is called immediately after Save().
- 5616 - don't produce corrupt zipfiles after Remove()
- 5998 and 6048 - better exceptions
- 6182 - handle .docx file
- 6637 - BadCrcException in multi-thread extract.
- correctly handle files with a leading dot-slash.
Some of the changes made for FxCOP compliance, are BREAKING changes. This means that while most old applications will just work when you just recompile them against the new library, some
- the param names changed for numerous methods. If you are using Reflection to invoke the library, the different param names will cause your app to break. The workaround is pretty simple - just use the correct param names.
- for CLS compliance, the Crc32 class now returns Int32 for the calculated CRC, not Uint32.
- Some of the Exceptions have changed.