Опции библиотеки Zip для Compact Framework?

Мои требования:

  • Поддержка устройств .NET Compact Framework 2.0 и Windows Mobile 6.0.
  • Нужно только распаковать содержимое в каталог на карте памяти. Создание zip-файлов не требуется.
  • Должен быть в состоянии использовать в корпоративном / коммерческом программном обеспечении.
  • Может быть с открытым исходным кодом, но не иметь лицензии GPL или другой вирусной лицензии.

Я видел Xceed Zip для библиотеки CF. Какие еще есть варианты?

10.08.2008 21:00:14
5 ОТВЕТОВ
РЕШЕНИЕ

Взгляните на #ziplib (www.icsharpcode.com). Это GPL, но вы можете использовать его в коммерческих приложениях с закрытым исходным кодом. Они ничего не говорят конкретно на своей странице об использовании его с Compact Framework, поэтому вам придется самостоятельно протестировать его (при этом это чистый C # без каких-либо внешних зависимостей, так что шансы несколько хороши, что он будет работай).

3
10.08.2008 21:04:56

Похоже, что это может быть хорошим вариантом для вас: http://www.codeplex.com/DotNetZip . Он кажется маленьким, имеет источник и имеет очень открытую лицензию (MS-PL).

1
11.08.2008 00:58:27

Похоже, вам нужен zlibCE из фонда OpenNETCF. Вы можете получить его здесь: http://opennetcf.com/FreeSoftware/zlibCE/tabid/245/Default.aspx

Это порт библиотеки linux zlib для CE. По своей сути это родная dll, но теперь они также предоставляют оболочку .NET вместе со всем исходным кодом.

Я использовал его в проектах раньше, и он работал довольно хорошо.

1
16.08.2008 01:27:44

Я использую набор инструментов Resco MobileForms для различных функций: http://www.resco.net/developer/mobileformstoolkit/overview.aspx

Включает в себя хорошую библиотеку ZIP.

0
18.09.2008 16:33:49

Начиная с v1.7, дистрибутив DotNetZip теперь включает версию, созданную специально для .NET Compact Framework, v2.0 или v3.5. http://www.codeplex.com/DotNetZip/Release/ProjectReleases.aspx . Это около ~ 70к DLL. Это делает ZIP, распаковать, Zip-редактирование, пароли, ZIP64, Unicode, потоки и многое другое.

DotNetZip - это 100% управляемый код, открытый исходный код и бесплатный / бесплатный в использовании. Это также очень просто и легко.

  try
  {
      using (var zip1 = Ionic.Zip.ZipFile.Read(zipToUnpack))
      {
          foreach (var entry in zip1)
          {
              entry.Extract(dir, ExtractExistingFileAction.OverwriteSilently);
          }
      }
  }
  catch (Exception ex)
  {
      MessageBox.Show("Exception! " + ex);
  }

В дистрибутив исходного кода включен пример приложения, которое распаковывается на карту памяти.

Приложение CF-Unzipper http://www.freeimagehosting.net/uploads/ce5ad6a964.png

5
15.05.2009 16:19:36
Из любопытства, почему построен для CF 3.5? CF 3.5 имеет встроенную поддержку сжатия. Было бы гораздо полезнее, если бы он был построен для 2.0, который все еще имеет значительную базу установки и не имеет поддержки сжатия.
ctacke 23.12.2008 15:26:27
Где в .NET Compact Framework 3.5 поддерживаются ZIP-архивы? System.IO.Compression предназначен только для алгоритмов сжатия deflate / gzip. Они НЕ поддерживают формат файла ZIP.
Martin Plante 23.12.2008 16:26:11
У вас обоих есть очки. Ctacke, ты прав, вокруг гораздо больше устройств CF 2.0. Тонкий - вы также правы: .NET Framework (рабочий стол или CF, 3.5 или 2.0) не предоставляет встроенную поддержку для управления почтовыми индексами. В любом случае, я обновил v1.7 DotNetZip, чтобы он теперь работал на CF 2.0.
Cheeso 4.01.2009 03:14:29