问题标签 [sevenzipsharp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
20868 浏览

c# - 我将如何在此代码中使用 Sevenzipsharp?

iv 尝试了许多不同的方法来让它工作,我让它基本上工作,但我无法得到 WaitForExit(); 就像他们在这里一样工作......那么我将如何将其转换为与sevenzip一起使用?因为我无法让它工作,而且我的 SFX 是密码的,所以它们不能被访问,除非通过使用程序和添加 7z.DLL 我无法添加它,因为我收到错误:

无法添加对 7za.dll 的引用。请确保该文件是可访问的,并且它是一个有效的程序集或 COM 组件。

新:好的,这就是我目前所拥有的,但我收到错误“无法加载 7-zip 库或内部 COM 错误!消息:加载库失败”

0 投票
1 回答
2362 浏览

c# - SevenZipSharp - 将文件附加到 zip 并删除文件路径

我正在使用 SevenZipSharp 将文件压缩成 zip 文件。我有两个问题:

  1. 在同一目标文件上多次使用 CompressFiles 时,它不会附加文件,而是覆盖它们。

  2. 我希望在没有完整路径的情况下添加文件,但似乎无法找到方法(我认为 PreserveDirectoryRoot = false 可以解决问题,但事实并非如此)。

有人有想法吗?

0 投票
2 回答
7456 浏览

c# - SevenZipSharp - 压缩内存流

我正在使用 SevenZipSharp 将文件压缩成 zip 文件。有没有办法使用它从内存流中创建一个 zip(意思是,之前将文件加载到内存流中)?

谢谢,玛雅。

0 投票
2 回答
2495 浏览

c# - 如何使用 SevenZipSharp 创建 SFX ZIP?

我一直在寻找 SevenZipSharp 创建一个自解压 zip 文件。项目页面说他们有一个特殊的类 SevenZipSfx 可以做到这一点。但是,我已经搜索了 0.64 版的对象资源管理器和文档,但找不到任何对它的引用。

有谁知道这门课是否缺课,或者我缺课的“特殊课”是否有不同的含义?

0 投票
2 回答
1221 浏览

c# - 为什么压缩然后未压缩不同长度的流

我正在使用 SevenZipSharp 库来压缩然后解压缩包含一个简单序列化对象的 MemoryStream。但是,压缩流和解压缩流的长度不同。

从下面运行的代码中我得到

输入长度:174 输出长度:338

(SevenZipSharp dll 包含在参考中,7z.dll 包含在项目输出中)

谁能帮我解释为什么会这样?

谢谢,

0 投票
7 回答
4456 浏览

c# - 使用 7zip 检测文件是否为存档

我想使用 SevenZipSharp 来确定文件是否为存档。我知道这是可能的,因为在资源管理器中,如果我将 .zip 重命名为 .bmp,7zip 仍会将其识别为存档。

--edit:换句话说,我希望 7zip 告诉我文件(无论扩展名如何)是否包含某种受支持的存档(zip、tar、rar、iso 等)

谢谢,菲德尔

0 投票
2 回答
1968 浏览

c# - 使用 SevenSharpZip 附加流

这两天我一直在敲我的头。我们使用 7ZipSharp 从多个源文件(实际上是传入的电子邮件)创建 .7z 文件。

为了优化应用程序,我想避免硬盘访问,所以我切换到了 CompressStreams 函数系列。

使用文件名而不是 Streams 的代码可以完美运行。切换到 Streams 时,我得到“KeyNotFoundException”,只有当 CompressionMode = Append。

我的测试代码:

辅助方法代码:

错误来源是文件 LibraryManager.cs,方法 InArchive,第 428 行。

总结一下:

  1. 附加文件而不是流,好的
  2. CompressStream in mode = Create, OK
  3. 之后, CompressStream in mode = Append 失败。

有没有人将多个流添加到 .7z 文件的任何工作代码,或者这可能是我应该发布到 SevenZipSharp 论坛的错误?

谢谢,

0 投票
2 回答
4042 浏览

c# - 如何使用 SevenZipSharp 将文件添加到存档

首先我想做的是:

我有一个要添加到同一存档中的文件列表。此文件的文件夹结构应包含在存档中。

我遇到的问题是我无法将文件添加到现有存档中。当我CompressionMode.Create只使用存档中的实际文件时,当我使用时,CompressionMode.Append我得到一个KeyNotFoundException并且存档上没有任何变化。

0 投票
4 回答
5071 浏览

c# - 使用 MS-Test 执行测试时无法加载 DLL

在我的程序中,我使用 SevenZipSharp 生成 zip 文件。SevenZipSharp 是一个托管 DLL,它加载另一个 DLL,7z.dll。我正在使用 SevenZipCompressor.SetLibraryPath 手动设置 SevenZipSharp 到 7z.dll 的路径。

当我在调试模式下执行我的程序时,一切正常,它会生成你喜欢的 zip 文件。但是,当我使用 mstest 执行单元测试时,SevenZipSharp 总是给我以下错误:

测试方法抛出异常:SevenZip.SevenZipLibraryException:无法加载 7-zip 库或内部 COM 错误!消息:加载库失败..

我怀疑 MSTest 可能正在做一些阻止 SevenZipSharp 能够加载 7z.dll 的事情,比如在安全严格的沙箱中运行(或其他东西。我是 C# 和 MSTest 的新手......)

有谁知道可能发生的事情?

谢谢!

0 投票
2 回答
1196 浏览

c# - 在 Sevenzipsharp (C#) 中检查档案是否受密码保护

我正在编写一个类似于 7-Zip 的窗口表单,我的问题出在提取部分,我不知道如何检查我要提取的存档是否受密码保护。任何的想法?