Я пытаюсь реализовать спецификацию Microsoft для формата message.rpmsg (здесь: http://msdn.microsoft.com/en-us/library/ee625343(v=EXCHG.80).aspx).. Спецификация - странная комбинация сжатого потока zlib, упакованного в пакеты. Для каждого пакета мне нужно поместить в заголовок пакетаколичество байтов в несжатом потоке (должно быть 4096, в противном случае Outlook кашляет, несмотря на спецификации), размер сжатого буфера и магический маркер.
Мой код находится в .net, и желательноЯ ищу полностью управляемую библиотеку.
Просмотр различных библиотек (SharpZlibLib, zlib.NET, пространство имен Microsoft Compression.Deflate) - я не смог найти общедоступные записи, которые для каждой операции «Запись»сделает: - вернет количество сжатых байтов; - гарантирует границу BYTE (FLUSH_SYNC); - в идеале, без подмены или слишком большого изменения кода
У библиотек, на которые я смотрел, есть поток вывода, из которого можно прочитать(весь сжатый поток) - но не предоставляют доступ к самим пакетам.
ПокаЯ использую исходную библиотеку zlib и нативный zlib1.dll после многих модификаций contrib / dotzlib - однако я бы хотел избежать очевидных проблем с производительностью и развертыванием моего текущего обходного пути
Поэтому я ищу библиотеку, которая позволит мне указать режим FLUSH и дать мне доступ к размеру каждого пакета.
Кроме того, если кто-то может оценить различные библиотеки (zlib.net, SharpZipLib кажетсябыть самым вездесущим - что-нибудь еще?), и такие области, как производительность / качество / поддержка
Большое спасибо Uri