【问题标题】:Uncompress in .NET Compact Framework 1.0在 .NET Compact Framework 1.0 中解压缩
【发布时间】:2011-05-04 18:32:31
【问题描述】:

我需要一个可以用来解压缩文件集合的库(类似于解压缩)。任何压缩格式都可以。到目前为止,我还没有找到任何符合我要求的 zip 库。库需要满足以下要求:

1) .NET Compact Framework 1.0 兼容。

2) 我需要访问代码(必须是 C#),以便将其包含在我的项目中。我不能使用 dll 文件。

3) 最好是所有托管代码。

【问题讨论】:

  • .NET CF2 现在不是五年了吗?你真的还在使用前身进行新的开发吗?
  • 是的,作为安装过程的一部分,其中包括解压缩一些文件并安装 .NET CF 3.5 版。

标签: c# compact-framework compression


【解决方案1】:

http://www.icsharpcode.net/opensource/sharpziplib/download.aspx

开源并适用于 .NET CF 1 和 2。

编辑:

您可以设置条件编译常量来指定Framework,例如:

#elif (NETCF_1_0)
[assembly: AssemblyTitle("SharpZipLib for .NET Compact Framework 1.0")]
#elif (NETCF_2_0)
[assembly: AssemblyTitle("SharpZipLib for .NET Compact Framework 2.0")]

通过检查 #ziplib 源,似乎 .NET CF 1.0 的唯一限制是您无法加密或解密 .zip 存档中的文件(Cf 1.0 不提供 System.Security.Cryptography)。

【讨论】:

  • 实际上,即使他们说它适用于 CF1,但它并不适用。他们说他们提供 CF1 二进制文件,但他们没有。该代码无法为 CF1 编译。
  • IIRC,您需要在您的项目中设置一个条件编译常量(NETCF_1_0)并从头开始重建 SharpZipLib 代码。这应该会删除对 CF 不支持的 CultureInfo 等内容的所有引用。
  • 我也注意到了,我设置了 NETCF_1_0 编译常量,但它仍然没有构建。你得到这个来建造吗?
  • 我删除并重新添加了所有的 cs 文件和编译符号,并且由于某种原因它现在构建了。在我确认这将真正在 CF1 上运行并且我真的可以用它解压缩文件后,我会将你的回答标记为正确。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-15
  • 2020-12-09
  • 1970-01-01
  • 2011-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多