如何提取 InstallShield Cabinet 文件?

如何提取 InstallShield Cabinet 文件?

我需要提取 InstallShield Cabinet 文件 (.cab) 的内容。

我应该使用什么工具来完成这项工作?

答案1

我最喜欢的小帮手之一:

通用提取器程序确实在做它所说的事情:从任何类型的档案中提取文件,无论它是简单的 ZIP 文件、安装程序、还是 Windows 安装程序 (.msi) 包。

... 确实任何 Installshield 都是如此(请参阅下面的列表)。

替代文本

Archive Type    Common File Extension(s)
7-zip archive   .7z, .exe
ACE archive     .ace
ARC archive     .arc
ARJ archive     .arj, .exe
ASpack compressed file  .exe
BIN/CUE CD-ROM image    .bin, .cue
bzip2 archive   .bz2, .tbz2, .tar.bz2
CPIO compressed file    .cpio
Debian package  .deb
DiscJuggler CD-ROM image    .cdi
Encoded files   .b64, .uu, .uue, .xx, .xxe, .yenc, .ntx
Gentee package  .exe
gzip archive    .gz, .tgz, .tar.gz
IMG floppy disk image   .img
Inno Setup package  .exe
Installer VISE package  .exe
InstallShield Cabinet archive   .cab, .1, .lib
InstallShield package   .exe
ISO 9660 CD-ROM image   .iso
KGB archive     .kgb, kge, .exe
LZH compressed file     .lzh, .lha
LZMA compressed file    .lzma
LZO compressed file     .lzo
LZW compressed file     .Z, .tz, .tar.Z
LZX compressed file     .lzx
MHTML file  .mht
Microsoft Cabinet archive   .cab, .exe, .imf
Microsoft Compiled Help file    .chm
Microsoft compressed file   .??_
Microsoft LIT e-book    .lit
Microsoft Windows Help file     .hlp
Nero CD-ROM images  .nrg
NSIS package    .exe
Oasis Document Format (ODF) document    .odt, .odp, .odg, .ods
Office Open XML (OOXML) document    .docx, .pptx, .xlsx
Outlook Express mail archive    .dbx
PEA archive     .pea
RAR archive     .rar, .001, .exe
Reflexive Arcade package    .exe
RoboForm package    .exe
RPM package     .rpm
SetupFactory package    .exe
SIS (SymbianOS) packages    .sis
StuffIt packages    .sit
TAR archive     .tar, .tbz2, .tgz, .tz, .tar.bz2, .tar.gz, .tar.z
UHARC archive   .uha
UPX compressed file     .exe, .dll
Windows Imaging Format image    .wim
Windows Installer package   .msi
Windows Installer patch     .msp
Windows Update Standalone patch     .msu
Wise Installer package  .exe
ZIP archive     .zip, .jar, .xpi, .wz, .exe
Zoo archive     .zoo

Universal Extractor 是免费软件,并且可移植。

它是一种出色的实用程序,可以提取驱动程序或安装程序以使应用程序变得“可移植”,并且正如他们声称的那样,它确实适用于几乎任何形式的档案。

答案2

“i6comp”(UniExtract)和/或“unshield”不再是徒劳的努力。任何等于或超过 InstallShield v12(InstallScript 项目)的东西都不会提取。InstallShield 自己的“CabView”(ISCabVu.exe)可以让你一次处理一个文件。但我需要为每种语言提取超过 10,000 个文件才能重建安装程序。因此在这方面它也没有多大帮助。

我发现的唯一选择是采用 IS2009“iscab.exe”(最新发布的版本)并放置在我的 IS2010 系统目录中。将 IS“系统”路径添加到您的 %path% ENV。最终不得不创建 15 个单独的 INI 文件,但将所有 LANG 相关文件分开。绝对比使用 Cab View 并重复提取 10,000 次要好!

例子:

创建一个空白的 INI 文件。这将保存 cab 中的所有文件信息:

type nul > allfiles.ini

运行此 iscab.exe 命令将所有文件添加到新的 INI 文件中:

iscab.exe ..\MyAppSetupDir\data1.cab -i"allfiles.ini" -lx

此时备份“allfiles.ini”。

编辑其他新的 INI 文件 - 复制第一个 INI 的布局。
仅包含您想要提取的文件。(或者,只需从上面编辑非备份/原始 INI 并删除您不想提取的任何内容。)

当新的 INI 准备就绪时,运行以下命令:

iscab.exe ..\MyAppSetupDir\data1.cab -i"MyEditedISCabIni.ini" -x

注意:您必须自己重新创建父级文件夹,否则将出现错误。

我觉得 ISCabVu 限制您每次只能处理 1 个文件,这太荒谬了,而事实上他们已经制作了上面详述的实用程序。他们不再分发此实用程序(>= IS2010)。非常令人沮丧。

编辑(2016):
有些人可能仍然可以在较旧的 IS 设置中使用上次 uniextract 提交中的 iscab.exe:
https://code.google.com/archive/p/uniextract/source/default/source
(下载“源”并在存档中查找 iscab.exe)

弹性站点:
驾驶室(他们删除了帮助网站)。

编辑(2016):
另请参阅此邮政和答案。
另请参阅解除屏蔽(目前维护)以及UniExtract2项目。

答案3

答案4

如果你使用的是 Linux,请尝试 p7zip

7z x your.cab

就可以了。

相关内容