Assalamualaykum Wr Br…Today we explore Ionic files. That’s the mainstream library, the full library, and it includes all the capability. If you have particular requirements, like you want a smaller library, or you want to exclude the Self-Extracting stuff, or you only want the ZLIB capability, then you may want to choose a
different assembly.Here’s a summary of the options.
Usage scenario Reference this DLL
Reading or writing Zip files Ionic.Zip.dll
Raw block or stream compression, ZLIB, GZIP, or DEFLATE Ionic.Zlib.dll
Raw block or stream compression, BZIP2 Ionic.BZip2.dll
Both raw compression as well as reading or writing Zip files Ionic.Zip.dll
Reading or writing Zip files on Compact Framework Ionic.Zip.CF.dll
Raw compression on Compact Framework Ionic.Zlib.CF.dll/Ionic.BZip2.CF.dll
Both raw compression as well as reading or writing Zip files on CF Ionic.Zip.CF.dll
Reading or writing Zip files, using desktop .NET framework but Ionic.Zip.Reduced.dll
never creating a self-extracting archive
Never reference both Ionic.Zlib.dll and Ionic.Zip.dll, or both Ionic.BZip2.dll and Ionic.Zip.dll in the same application. If your application does both Zlib and Zip stuff, you need only add a reference to Ionic.Zip.dll. It includes all the capability in Ionic.Zlib.dll and Ionic.BZip2.dll You always need to reference only a single Ionic DLL, regardless whether you use Zlib or BZip2 or Zip or some combination.
The classes in the ZIP library reside in these namespaces:
Namespace Interesting classes
Ionic.Zip ZipFile, ZipEntry, ZipOutputStream, and
Ionic.Zlib DeflateStream, GZipStream, ZlibStream
Ionic.BZip2 BZip2InputStream, BZip2OutputStream
If you want only ZLIB (raw compression and decompression, RFC 1950, 1951, and 1952), the ZLIB classes are packaged independently, in Ionic.Zlib.dll. Likewise, if you want to do BZIP2 compression, outside the scope of a zip file, you can use the Ionic.BZip2.dll assembly.
If you want ZIP, or both ZIP and ZLIB, then your application should depend soly on Ionic.Zip.dll; this assembly includes a superset of the classes in Ionic.Zlib.dll and Ionic.BZip2.dll.