Windows原生支持自解压EXE,可用WinRAR(5步图形化)、7-Zip(命令行+config.txt控路径)、Bandizip(右键一键)或系统IExpress(纯静默无运行)实现。

你需要把一个文件夹(比如含exe、配置文件、图标等整套工具)打包成单个EXE,让别人双击就能自动解压,不装任何软件也能用——这正是Windows原生支持的自解压功能要解决的问题。
用WinRAR快速生成自解压EXE
这是最省事的方法,适合日常打包,图形界面直观,5步搞定。
1. 选中目标文件夹 → 右键 → “添加到压缩文件…”
2. 在“常规”选项卡中,勾选【创建自解压格式压缩文件】
3. 压缩文件名栏直接输入完整名称,必须以 .exe 结尾(例如:toolkit.exe),否则无法运行
4. 切换到“高级”→“自解压选项”→“设置”选项卡,在“解压后运行”框中填入主程序路径,如:.\app\launcher.exe(注意开头的点和反斜杠)
5. 回到“高级”→“自解压选项”→“模式”选项卡,勾选“全部隐藏”,点击“确定”即生成。
用7-Zip命令行合成带默认路径的自解压EXE
如果你需要控制解压位置(比如固定释放到桌面或用户文档),又不想弹窗提示,就得靠命令行+配置文件组合实现。
方法一:手动拼接SFX模块
1. 确保已安装7-Zip,且 C:\Program Files\7-Zip\7z.sfx 文件存在
2. 将待打包的全部文件放进一个空文件夹(如 D:\pkg\),不要嵌套在子文件夹里
3. 打开CMD,执行:"C:\Program Files\7-Zip\7z.exe" a -t7z archive.7z D:\pkg\* -mx=9
4. 再执行:copy /b "C:\Program Files\7-Zip\7z.sfx" + archive.7z output.exe
方法二:加config.txt指定行为
① 新建记事本,输入:Path=%USERPROFILE%\Desktop\MyTool → 保存为 config.txt(ANSI编码,不能是UTF-8)
② 把 config.txt、archive.7z、7z.sfx 放在同一目录
③ 执行:copy /b 7z.sfx + config.txt + archive.7z final.exe
这一步若跳过config.txt,解压时会默认使用临时路径,用户找不到文件;加了它,所有内容就稳稳落在桌面MyTool文件夹里。
用Bandizip右键一键打包(免配置)
适合不想点太多设置、只要“扔进去→出EXE”的场景,Bandizip比WinRAR更轻量,对杀软更友好。
1. 选中文件夹 → 右键 → “添加到压缩文件…”
2. 在“压缩格式”下拉菜单中,直接选择 exe
3. 勾选“解压后自动运行指定程序”,并在右侧填写主程序名(如 start.bat 或 app.exe)
4. 点击“开始”,几秒后生成的EXE双击即解压并运行,全程无界面弹出。
用系统自带IExpress制作纯静默自解压包
IExpress是Windows内置工具,不依赖第三方软件,生成的EXE极简、无广告、不报毒,但只能解压,不能自动运行程序。
第一步:按 Win+R 输入 iexpress → 回车启动向导
第二步:选“Create new Self Extraction Directive file” → 下一步
第三步:选“Extract files only” → 下一步
第四步:标题随便填(如“MyTool Installer”)→ 下一步
第五步:关键一步——勾选 No prompt 和 Do not display a license,然后点击“Add”添加你的整个文件夹(不是压缩包!是原始文件)
第六步:“Default(recommended)”窗口模式 → “No message”完成提示 → 输入输出路径(如 C:\output.exe)→ 完成
生成的EXE双击后无声无息解压到当前目录,适合做内部交付包或免打扰部署场景。











