message.rpmsg 形式の Microsoft 仕様を実装しようとしています (ここ: 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 ) - 理想的には、なりすましやコードの変更をあまり行わないこと
私が調べたライブラリには、(圧縮されたストリーム全体) を読み取ることができる出力ストリームがありますが、パケット自体へのアクセスは提供していません。
今のところ、contrib/dotzlib に多くの変更を加えた後、オリジナルの zlib ライブラリとネイティブの zlib1.dll を使用しています。
そこで、FLUSH モードを指定し、各パケットのサイズにアクセスできるライブラリを探しています。
また、誰かがさまざまなライブラリを評価できる場合 (zlib.net、SharpZipLib が最もユビキタスなようです - 他に何かありますか?)、およびパフォーマンス/品質/サポートなどの領域
ありがとうございました