My requirements:

  • Support .NET Compact Framework 2.0 and Windows Mobile 6.0 devices.
  • Only need to unzip the contents to a directory on a storage card. Creation of zip files is not required.
  • Must be able to use in corporate/commercial software.
  • Can be open source, but not have GPL or other viral license.

I've seen the Xceed Zip for CF library. What other options are there?

+3  A: 

Have a look at #ziplib ( It's GPL, but you can use it in closed-source, commercial applications. They don't say anything specifically on their page about using it with the Compact Framework, so you'd have to give it a test yourself (that said, it's pure C# without any external dependencies, so the chances are somewhat good that it will work).

+1  A: 

This looks like it may be a good option for you: It seems small, has source and has a very open license (MS-PL).

+1  A: 

Looks like what you need is zlibCE from the OpenNETCF foundation. You can get it here:

It's a port of the linux zlib library to CE. At it's core, it's a native dll, but they now also provide a .NET wrapper, along with all the source code.

I've used it in projects before and it performed quite well.

Adam Haile

I use the Resco MobileForms toolkit for a variety of functionality:

It includes a good ZIP library.

Gary Joynes
+2  A: 
Out of curiosity, why built for CF 3.5? CF 3.5 *has* compression support built in. It would be far more useful if it were built for 2.0, which there is still a significant install base and which *doesn't* have compression support.
Where in the .NET Compact Framework 3.5 are ZIP archives supported? System.IO.Compression is only for the deflate/gzip compression algorithms. They do NOT support the ZIP file format.
Martin Plante
Both of you have points. Ctacke, you're right, there are many more CF 2.0 devices around. Slim - you are also correct: the .NET Framework (desktop or CF, 3.5 or 2.0) does not provide built-in support for managing zips. In any case, I've updated v1.7 of DotNetZip so that it now runs on CF 2.0.