7-Zip怎么压缩成cab格式 7-Zip如何创建Windows安装程序常用的cab压缩包【操作】

星晨小哥_8881

星晨小哥_8881

2026-03-27

713人浏览

原创

7-zip官方版本不支持直接创建cab格式压缩包,需借助windows内置makecab.exe、iexpress工具或powershell脚本等外部方式实现。

7-zip怎么压缩成cab格式 7-zip如何创建windows安装程序常用的cab压缩包【操作】

如果您希望使用7-Zip将文件压缩为CAB格式,需注意:7-Zip官方版本(含GUI与命令行)默认不支持直接创建CAB格式压缩包。CAB是Windows专用归档格式,其生成依赖系统原生工具或特定封装逻辑。以下是可行的多种操作路径:

一、通过7-Zip间接生成CAB文件(需配合系统工具)

该方法利用7-Zip先打包为ZIP/7Z,再借助Windows内置makecab.exe转换为CAB。适用于需保留7-Zip操作习惯但最终输出CAB的场景。

1、使用7-Zip将目标文件压缩为ZIP格式:右键文件 → 选择“7-Zip” → “添加到压缩包” → 在“压缩格式”下拉菜单中选择ZIP → 点击“确定”生成.zip文件。

2、新建一个纯文本文件,命名为files.ddf,用记事本编辑,写入以下内容(按实际路径修改):
.Set CabinetName1="output.cab"
.Set DiskDirectory1="."
.Set CompressionType=MSZIP
"源文件路径\file1.exe"
"源文件路径\config.ini"

3、以管理员身份运行命令提示符,切换至files.ddf所在目录,执行:
makecab /f files.ddf

4、检查当前目录,确认已生成output.cab文件。

二、使用7-Zip打开并提取CAB,但不可直接创建

7-Zip支持对已有CAB文件进行解压和浏览,这是其内建能力;但创建CAB必须调用外部机制,因其代码库未集成CAB编码器。此限制源于CAB格式受微软专利与签名机制约束。

1、右键已存在的.cab文件 → 选择“7-Zip” → “打开压缩包” → 可查看、拖拽提取内部文件。

2、在7-Zip主界面中,点击“文件” → “打开” → 选择.cab文件 → 确认显示内容完整无误。

3、如需验证CAB结构合规性,可将该CAB拖入Windows资源管理器地址栏,观察是否能正常展开树状目录。

三、替代方案:用IExpress + 7-Zip组合生成安装型CAB

Windows自带的IExpress工具可生成自解压EXE,再由7-Zip将其重新封装为CAB,从而构造出符合Windows安装程序(如Setup.exe调用CAB资源)要求的归档结构。

1、按Win+R输入iexpress启动向导 → 选择“创建新的自解压缩文件” → 点击“下一步”。

2、在“包含文件”页点击“添加”,导入所有待打包的文件(含EXE、DLL、INF等) → 设置解压后运行命令(如setup.exe)。

Pixelcut.ai
Pixelcut.ai

Pixelcut.ai是一款AI图片处理工具,AI产品背景移除和替换。

下载

3、完成向导,生成setup.exe(不含CAB,仅为自解压体)。

4、用7-Zip右键点击该setup.exe → 选择“7-Zip” → “添加到压缩包” → 压缩格式选CAB(若7-Zip版本支持CAB写入,通常为v21.07+第三方汉化版或编译分支;标准版仍会灰显禁用)。

5、若CAB选项不可用,则改用命令行方式:
7z a -t cab output.cab setup.exe

四、直接使用Windows原生makecab.exe(推荐首选)

makecab.exe是微软官方CAB生成器,无需额外安装,Windows 7及以上系统均内置,位于%WINDIR%\System32\目录,具备完整策略控制能力,兼容Windows安装程序标准。

1、准备待打包文件列表,例如创建list.txt,每行一个相对路径:
"app\main.exe"
"app\config.xml"
"license.txt"

2、在同目录下打开命令提示符,执行:
makecab /f list.txt /d CabinetName1=package.cab

3、执行完成后,检查当前目录是否存在package.cab且大小非零。

4、如需高压缩率,可添加参数:
/d compressiontype=LZX /d compressionmemory=21

五、通过PowerShell脚本自动化CAB生成(免手动编辑DDF)

该方法绕过传统DDF文件编写,利用PowerShell动态构建指令并调用makecab.exe,适合批量处理或CI/CD集成场景。

1、新建文本文件,保存为build-cab.ps1,内容如下:

$files = Get-ChildItem ".\source\" -File | ForEach-Object { '"' + $_.FullName + '"' }<br>
$ddf = "@echo off`n.Set CabinetName1=`"output.cab`"`n.Set DiskDirectory1=`"."`"`n.Set CompressionType=MSZIP`n" + ($files -join "`n")<br>
$ddf | Out-File -FilePath "auto.ddf" -Encoding ASCII<br>
makecab /f auto.ddf

2、以管理员身份运行PowerShell,执行:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

3、执行脚本:
.\build-cab.ps1

4、确认output.cab生成成功,且auto.ddf可安全删除。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

7-zip

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
php中foreach用法
php中foreach用法

本专题整合了php中foreach用法的相关介绍,阅读专题下面的文章了解更多详细教程。

2025.12.04

758

13

pdf怎么转换成xml格式
pdf怎么转换成xml格式

将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.01

4484

5

xml怎么变成word
xml怎么变成word

步骤:1. 导入 xml 文件;2. 选择 xml 结构;3. 映射 xml 元素到 word 元素;4. 生成 word 文档。提示:确保 xml 文件结构良好,并预览 word 文档以验证转换是否成功。想了解更多xml的相关内容,可以阅读本专题下面的文章。

2024.08.01

5797

7

xml是什么格式的文件
xml是什么格式的文件

xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。想了解更多相关的内容,可阅读本专题下面的相关文章。

2024.11.28

2422

7

常见的编码方式
常见的编码方式

常见的编码方式有ASCII编码、Unicode编码、UTF-8编码、UTF-16编码、GBK编码等。想了解更多编码方式相关内容,可以阅读本专题下面的文章。

2023.10.24

1448

7

a和A对应的ASCII码数值
a和A对应的ASCII码数值

a的ascii码是65,a的ascii码是97;ascii码表中,一个字母的大小写数值相差32,一般知道大写字母的ascii码数值,其对应的小写字母的ascii码数值就算出来了,是大写字母的ascii码数值“+32”。想了解更多相关的内容,可阅读本专题下面的相关文章。

2024.10.24

5227

11

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.26

3199

3

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.27

2778

6

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

2023.08.01

1488

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.7万人学习