1

Windows 7 x86 的 setuptools 安装程序被命名为 exe 文件,但可以作为 zip 文件打开。当我查看它时,有两个顶级文件夹:PURELIB 和 SCRIPTS。这些是什么,当我双击这个 exe 时,Windows 为我运行它是怎么回事,虽然它是一个 zip 文件?也就是说,Windows 怎么知道在这个 zip/exe 中运行什么?谢谢。

4

2 回答 2

2

这是一个自解压档案

自解压存档是一种计算机应用程序,其中包含文件存档以及提取此信息的程序。此类文件存档不需要从存档中提取第二个可执行文件或程序,因为存档文件通常需要。因此,任何人都可以提取存档中的文件,无论他们是否拥有适当的解压缩程序,只要该程序可以在他们的计算机平台上运行。

它是一个可执行文件,只是您的解压软件知道查找自解压档案,并将其视为普通档案。

于 2012-05-02T17:38:29.527 回答
1

这些是什么,当我双击这个 exe 时,Windows 为我运行它是怎么回事,虽然它是一个 zip 文件?

来自http://zziplib.sourceforge.net/sfx-make.html

基本方案是这样的:最终文件将有一个从偏移量 null 开始的 EXE,然后是 ZIP 存档的数据条目。ZIP 存档的最后一部分是 ZIP 中央目录,它在文件末尾结束。

魔术是可能的因为 exe 格式允许将任何数据附加到可执行文件中,而 zip 格式允许将任何数据附加到存档中。

于 2012-05-02T21:49:15.687 回答