一尘不染

如何使用.NET创建7-Zip存档?

c#

如何从C#控制台应用程序创建7-Zip存档?我需要能够使用常规的,广泛可用的7-Zip程序提取档案。


这是我的结果,并提供了示例作为对此问题的解答

  • “掏空”到7z.exe-这是最简单,最有效的方法,我可以确认 它的效果很好 。正如workmad3所述,我只需要保证在所有目标计算机上都安装了7z.exe,这是我可以保证的。
  • 7压缩内存压缩 -这是指在发送到客户端之前“在内存中”压缩cookie;这种方法似乎很有希望。包装器方法(包装LZMA SDK)返回类型byte[]。将byte[]数组写入文件时,无法使用7-Zip(File.7z is not supported archive)提取数组。
  • 7zSharp包装器(位于CodePlex上)-包装7z exe / LZMA SDK。我从我的应用程序中引用了该项目,该项目成功创建了一些存档文件,但是我无法使用常规的7压缩程序(File.7z is not supported archive)提取文件。
  • 7Zip SDK或LZMA SDK-我想我不够聪明,无法弄清楚如何使用它(这就是我在此处发布的原因)…演示如何创建7zip存档的工作代码示例,常规的7zip程序?
  • 用于7-Zip存档DLL的CodeProject C#(.NET)接口 -仅支持从7zip存档中提取…我需要创建它们!
  • SharpZipLib-根据他们的常见问题解答,SharpZipLib不支持7zip。

阅读 205

收藏
2020-05-19

共1个答案

一尘不染

如果可以保证将7-zip应用程序安装在所有目标计算机上(并在路径中),则可以通过调用命令行应用程序7z来卸载。不是最优雅的解决方案,而是最少的工作。

2020-05-19