问题标签 [winrar]

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 投票
1 回答
1618 浏览

winrar - 如何将文件添加到自解压 RAR 存档?

有没有办法自动将文件添加到现有的 SFX 存档中?

我用WinRAR创建了自解压存档Test.exe

现在我想添加C:\test\Test.txtTest.exe. 这可能吗?

0 投票
1 回答
7023 浏览

c - 用c代码解压rar文件

可能重复:
用c打开一个rar文件

我必须使用 c 代码提取 rar 文件。首先,我试图找到图书馆。我从http://www.unrarlib.org/得到它。但它是 2002 年构建的。所以它不支持当前的 rar 格式。然后我检查了http://www.rarlabs.com/rar_add.htm。它有库,但在 c++ 中。我对c++一无所知,所以我不能使用它们。我尝试通过使用系统功能来使用命令行工具 unrar。当我在 CMD 中使用 unrar 时,它提取了文件,但是当我在 C 中使用它时,(命令是 system( "unrar -e -p password protected_file.rar");)它只是打开了档案。它没有提取文件。现在我不知道下一步该怎么办?有人可以建议我吗?

这是我用来打开 rar 文件的代码。在系统命令中,ranjit 是密码。它在模块+文件名中给出了错误未定义的符号系统。有谁能够帮我??两天以来,我一直在为此苦苦挣扎。

0 投票
1 回答
925 浏览

file - winrar 没有正确关闭?

我有一个由 Windows 任务调度程序每周运行一次的脚本:

for /f "delims==" %%D in ('DIR D:\scripts /A /B /S') do ("C:\Program Files\WinRAR\WinRAR.EXE" a -agyyyy-MM-dd - r "c:\backup\scripts.rar" "%%D" )

通过一个bat文件。我的问题是在这个 bat 文件运行并完成后,我查看我的 Windows 任务管理器我仍然有大约 10 个 winrar.exe 正在运行,这是否意味着我的脚本/bat 没有正确关闭 winrar?我在脚本末尾遗漏了什么吗?

0 投票
1 回答
3291 浏览

compression - 我们应该使用什么压缩格式;我们应该放 DEFLATE (.zip) 休息吗?

随着大多数 Linux 发行版放弃 gzip 和 bzip2 以支持 LZMA2 来压缩它们的包,以及许多平台的许多开源实现,我想知道:我们不应该让 DEFLATE 和.zip格式(不幸的是,它被一遍又一遍地混为一谈)休息吗?并继续使用其他现代方式分发我们的(源)包?

GNU tar 支持J使用xz(另一个 LZMA2 压缩器)作为过滤器的开关:

但是,我倾向于使用7z(p7zip 实现),它是7zaLinux 下用于创建档案的朋友。在创建档案时,我仍然使用“避免 tar-bombs”范例,这意味着档案中有一个目录,因此从命令行提取不会导致当前目录中的文件溢出(这是Linux 上的标准操作方式tar,例如,但在 Windows 下这似乎不是一件值得做的事情)。

无论如何,似乎由于在包中的使用(例如 Fedora RPM 和 Ubuntu DEB),以及像tar. 它具有很高的压缩率(在标准设置中远远超过 bzip2)并且速度也非常快(压缩比 gzip 稍慢,

我自己做了一些基准测试,但我想把重点放在一些更广泛的基准测试上:

现在,您会注意到,作为参考实现的7-zip并没有出现在首位。然而 Freearc 使用它自己的.arc格式,它不是真正的跨平台能力,并且与 80 年代的旧ARC 不兼容。nanozip 不是开源的,这是一种低迷,但重要的是算法,而不是存档器!

无论如何,现在使用 7-zip 及其衍生实现 ( xz ) 的性能不再是问题,而且压缩率不言自明,我觉得将我的源包分发为.7z档案.tar.xz。但是,我面前有两个障碍,我似乎无法克服:

  1. WinRAR 的倡导者。不要误会我的意思,我对 WinRAR 或其用户没有怨恨,只是我不能在 Linux 上真正制作 RAR,而且没有必要,因为我们有免费的 LZMA2 工具。正如我所说,自从成为分发包的组成部分以来,它可以在任何现代分发中使用。由于制作 a.7z比 a需要大约相同的时间,.rar而且 LZMA2 文件通常更小,我不明白为什么不使用 7-zip。

  2. tar 档案必须是 zip 或 bzip2,没有例外。这是一个很难的。为什么这么多人对 gzip 印象深刻?甚至 bzip2 在大多数情况下也没有太多使用。诚然,gzip 速度很快,对于按需压缩(例如在 Web 服务器中)或创建大型镜像备份时,这是一个很好的选择。但是分发软件呢?LZMA2非常不对称。虽然压缩需要时间,但解压缩速度非常快。

好的,现在我的问题来了:

既然 LZMA2 可以说是下一个更好的压缩算法,为什么人们不跳上火车呢?为什么人们仍然使用WinRAR,它是专有的,压缩比更差,并且没有移植到Linux(除了unrar,但你显然不能用它创建档案)。为什么 Tarball 仍然大多是 gzip 压缩的?

有没有办法说服人们转向更新、可靠的归档格式,这不仅是跨平台的,而且是免费的?当我给某人一个以 结尾的文件时.7z,他们往往不知道如何处理它,这会改变吗?

哦,这是我自己做的小基准测试。我到处使用默认设置:

以字节为单位的大小;文件名Archiver_Format_Algorithm.Extension:)

填充集由包含 DOS 安装的磁盘映像组成:

(大小以字节为单位)

0 投票
2 回答
2595 浏览

php - 如何使用 PHP 提取 zip 文件并将文件保存到文件夹和文件名到数据库?

如何使用 PHP 提取 zip 文件并将文件保存到文件夹和文件名到数据库?

0 投票
1 回答
553 浏览

php - 通过 php 的 zip 与通过 winrar 的大小不同

我通过 php 创建一个 zip 存档,通过 winrar 创建另一个 zip 存档,但来自相同的文件。

两个档案的大小不同。通过 winrar 的那个更大(2 个字节)。

为什么 ?谢谢。

现在没事了。zip 是使用 php 正确创建的。

问题是我发送它使用

并没有那里ob_start();ob_end_clean();

这就是为什么通过标题来的文件大小不同的原因..无论如何感谢您的帮助;)

0 投票
3 回答
89142 浏览

zip - 使用 winrar 命令行创建 zip 档案

我正在使用以下 winrar 命令行来创建 zip 存档:

创建的档案是 RAR 格式而不是 ZIP。有没有办法创建常规 ZIP 而不是 RAR 档案?

0 投票
1 回答
2816 浏览

windows - 如何批量 Rar 带有 Unicode 名称的文件

我写了一个小批处理文件来解压文件夹内所有子文件夹中的所有内容。它工作正常,除了文件名应该是 ASCII。下面是工作的小代码:

我认为当文件名被解析为 WinRAR 时会出现问题,因为 WinRAR 归档具有 Unicode 名称的文件没有问题。

编辑:将文件名解析为 WinRAR 时,文件名会被修改,因此当 WinRAR 尝试以该名称查找文件时,它找不到它。例如一个文件: téext.pdf 解析时会变成 text.pdf 。

一个小问题:我没有尝试使用 7zip,用 7zip 实现同样的事情会更容易吗?

非常感谢您的帮助。

0 投票
2 回答
516 浏览

php - 强制从 php 打开和读取 zip 文件

这可能是一个简单的问题,也可能是一个相当复杂的问题,让你成为决定者。

使用 PHP 打开一个 zip 文件,将文件解压到一个目录并关闭 zip 文件并不是一个复杂的类。

但是可以说该文件不是 zip,但可以被WinRar读取,这些文件的示例就像 exe 的 SFX 档案等。

所有这些文件都有哪些因素可以让WinRar浏览它们的来源。

另一个例子是防病毒软件,它单独扫描 EXE 中的文件?

举个例子:

问候。

0 投票
1 回答
27262 浏览

console - 如何从批处理文件创建自动执行的 WinRar SFX 文件?

我有一个第 3 方安装程序,我希望我的用户能够下载并运行它作为我编写的应用程序的先决条件。安装程序可以采用允许被动安装的参数,用户可以在其中查看过程的进度,但不必与安装交互。

以前,我通过在 WinRar 中创建 SFX 文件来完成此行为。在 WinRAR GUI 的选项中,您可以指定解压缩压缩文件后要启动的文件,以及应用程序的参数。

有没有办法使用控制台创建 SFX 文件并设置这些自动执行属性?我正在尝试创建一个处理所有这些的批处理文件。

以下是到目前为止我的批处理文件内容:

在最后一步之后,我应该怎么做才能更新 SFX?