如何制作自解压和 运行 安装程序
How do I make a self extract and running installer
所以目前我的用户下载一个 zip 文件,将其解压缩,然后 运行 setup.exe - 我希望他们只需单击一下即可完成此操作。使用 http://www.wikihow.com/Use-7Zip-to-Create-Self-Extracting-excutables 我可以制作一个自解压的 exe,但它实际上 运行 安装程序。
来自这个问题
Why does 7zip Ignore my InstallPath when making a SFX installer?
看来我还需要一个 .sfx 文件,所以我从另一个问题中复制并创建了一个包含以下内容的文件
;!@Install@!UTF-8!
InstallPath="C:\test"
GUIMode="2"
RunProgram="setup.exe"
;!@InstallEnd@!
并调用了 setup.sfx 并将其与其他文件一起添加到存档中
setup.ini
setup.exe
setup.ico
install.jar
JVM32 (folder)
但没关系,我还需要做什么。
补充问题,我也有WinRar,我用7Zip还是Winrar对终端用户体验有影响吗?
好的,我已经开始工作了,希望这些信息有用。
首先,我现在意识到 self-extracting zip 不仅可以通过双击开始解压,而且不需要在用户计算机上安装解压应用程序,因为解压代码位于档案本身。这意味着 您将获得不同的用户体验,具体取决于您用来创建 sfx 的应用程序
我使用 WinRar 如下,这不需要你创建 sfx 文件,一切都可以通过 gui 创建:
- Select 个文件,右键单击并 select 添加到存档
- 使用浏览..在上面的文件夹中创建存档
- 将存档格式更改为 Zip
- 启用创建 SFX 存档
- Select 高级选项卡
- Select 音效选项
- Select 设置选项卡
- 在 运行 after Extraction 字段中输入 setup.exe
- Select 模式选项卡
- 启用解压到临时文件夹
- Select 文本和图标选项卡
- 为您的任务输入更合适的标题
- Select 好的
- Select 好的
生成的 exe 解压缩到一个临时文件夹,然后启动安装程序
我已经创建了有关如何执行此操作的分步说明,因为我也对如何使其正常工作感到非常困惑。
How to make a self extracting archive that runs your setup.exe with 7zip -sfx switch
步骤如下。
第 1 步 - 设置安装文件夹
为方便起见,创建一个文件夹 c:\Install。这是我们将复制所有必需文件的地方。
第 2 步 - 7 压缩您的安装程序
- 转到包含您的 .msi 和 setup.exe
的文件夹
- Select .msi 和 setup.exe
- 右键单击并选择 7Zip --> "Add to Archive"
- 为您的存档命名 "Installer.7z"(或您选择的名称)
- 点击确定
- 你现在应该 "Installer.7z".
- 将此 .7z 文件复制到您的 c:\Install 目录
第 3 步 - 获取 7z-Extra sfx 扩展模块
您需要下载7zSD.sfx
- 从 here
下载 LZMA 软件包之一
- 解压包,在
bin
文件夹中找到7zSD.sfx
。
- 将文件“7zSD.sfx”复制到 c:\Install
第 4 步 - 设置您的 config.txt
我建议使用 NotePad++ 编辑此文本文件,因为您需要使用 UTF-8 编码,以下说明均使用 notepad++。
- 使用 windows 资源管理器转到 c:\Install
- 右键单击并选择 "New Text File" 并将其命名为 config.txt
- 右键单击并选择“使用 NotePad++ 编辑”
- 单击 "Encoding Menu" 并选择 "Encode in UTF-8"
输入如下内容:
;!@Install@!UTF-8!
Title="SOFTWARE v1.0.0.0"
BeginPrompt="Do you want to install SOFTWARE v1.0.0.0?"
RunProgram="setup.exe"
;!@InstallEnd@!
编辑此内容,用您的产品名称替换 [SOFTWARE v1.0.0.0]。
关于设置文件的参数和选项的注释是 here.
检查点
您现在应该有一个包含以下 3 个文件的文件夹 "c:\Install":
- 安装程序.7z
- 7zSD.sfx
- config.txt
第 5 步 - 创建存档
我在网上找到的这些说明,但没有任何地方解释上述 4 个步骤中的任何一个。
- 打开cmd window, Window + R --> cmd --> 回车
在命令 window 中键入以下内容
cd \
cd Install
copy /b 7zSD.sfx + config.txt + Installer.7z MyInstaller.exe
在 c:\Install 中查找,您现在会看到您有一个 MyInstaller.exe
你完成了
运行 安装程序
双击 MyInstaller.exe,它会提示您的消息。单击“确定”,setup.exe 将 运行。
P.S。自动化注意事项
既然你已经在你的 c:\Install 目录中工作了,我将创建一个 "Install.bat" 文件并将复制脚本放入其中。
copy /b 7zSD.sfx + config.txt + Installer.7z MyInstaller.exe
现在,每次需要重建部署包的新版本时,您只需编辑 运行 Install.bat。
使用开源 7zip SFX-Packager 很简单 - 只需将 "Drag & drop" 个文件夹添加到它,并创建一个 portable/self-extracting 包。
所以目前我的用户下载一个 zip 文件,将其解压缩,然后 运行 setup.exe - 我希望他们只需单击一下即可完成此操作。使用 http://www.wikihow.com/Use-7Zip-to-Create-Self-Extracting-excutables 我可以制作一个自解压的 exe,但它实际上 运行 安装程序。
来自这个问题
Why does 7zip Ignore my InstallPath when making a SFX installer?
看来我还需要一个 .sfx 文件,所以我从另一个问题中复制并创建了一个包含以下内容的文件
;!@Install@!UTF-8!
InstallPath="C:\test"
GUIMode="2"
RunProgram="setup.exe"
;!@InstallEnd@!
并调用了 setup.sfx 并将其与其他文件一起添加到存档中
setup.ini
setup.exe
setup.ico
install.jar
JVM32 (folder)
但没关系,我还需要做什么。
补充问题,我也有WinRar,我用7Zip还是Winrar对终端用户体验有影响吗?
好的,我已经开始工作了,希望这些信息有用。
首先,我现在意识到 self-extracting zip 不仅可以通过双击开始解压,而且不需要在用户计算机上安装解压应用程序,因为解压代码位于档案本身。这意味着 您将获得不同的用户体验,具体取决于您用来创建 sfx 的应用程序
我使用 WinRar 如下,这不需要你创建 sfx 文件,一切都可以通过 gui 创建:
- Select 个文件,右键单击并 select 添加到存档
- 使用浏览..在上面的文件夹中创建存档
- 将存档格式更改为 Zip
- 启用创建 SFX 存档
- Select 高级选项卡
- Select 音效选项
- Select 设置选项卡
- 在 运行 after Extraction 字段中输入 setup.exe
- Select 模式选项卡
- 启用解压到临时文件夹
- Select 文本和图标选项卡
- 为您的任务输入更合适的标题
- Select 好的
- Select 好的
生成的 exe 解压缩到一个临时文件夹,然后启动安装程序
我已经创建了有关如何执行此操作的分步说明,因为我也对如何使其正常工作感到非常困惑。
How to make a self extracting archive that runs your setup.exe with 7zip -sfx switch
步骤如下。
第 1 步 - 设置安装文件夹
为方便起见,创建一个文件夹 c:\Install。这是我们将复制所有必需文件的地方。
第 2 步 - 7 压缩您的安装程序
- 转到包含您的 .msi 和 setup.exe 的文件夹
- Select .msi 和 setup.exe
- 右键单击并选择 7Zip --> "Add to Archive"
- 为您的存档命名 "Installer.7z"(或您选择的名称)
- 点击确定
- 你现在应该 "Installer.7z".
- 将此 .7z 文件复制到您的 c:\Install 目录
第 3 步 - 获取 7z-Extra sfx 扩展模块
您需要下载7zSD.sfx
- 从 here 下载 LZMA 软件包之一
- 解压包,在
bin
文件夹中找到7zSD.sfx
。 - 将文件“7zSD.sfx”复制到 c:\Install
第 4 步 - 设置您的 config.txt
我建议使用 NotePad++ 编辑此文本文件,因为您需要使用 UTF-8 编码,以下说明均使用 notepad++。
- 使用 windows 资源管理器转到 c:\Install
- 右键单击并选择 "New Text File" 并将其命名为 config.txt
- 右键单击并选择“使用 NotePad++ 编辑”
- 单击 "Encoding Menu" 并选择 "Encode in UTF-8"
输入如下内容:
;!@Install@!UTF-8! Title="SOFTWARE v1.0.0.0" BeginPrompt="Do you want to install SOFTWARE v1.0.0.0?" RunProgram="setup.exe" ;!@InstallEnd@!
编辑此内容,用您的产品名称替换 [SOFTWARE v1.0.0.0]。 关于设置文件的参数和选项的注释是 here.
检查点
您现在应该有一个包含以下 3 个文件的文件夹 "c:\Install":
- 安装程序.7z
- 7zSD.sfx
- config.txt
第 5 步 - 创建存档
我在网上找到的这些说明,但没有任何地方解释上述 4 个步骤中的任何一个。
- 打开cmd window, Window + R --> cmd --> 回车
在命令 window 中键入以下内容
cd \ cd Install copy /b 7zSD.sfx + config.txt + Installer.7z MyInstaller.exe
在 c:\Install 中查找,您现在会看到您有一个 MyInstaller.exe
你完成了
运行 安装程序
双击 MyInstaller.exe,它会提示您的消息。单击“确定”,setup.exe 将 运行。
P.S。自动化注意事项
既然你已经在你的 c:\Install 目录中工作了,我将创建一个 "Install.bat" 文件并将复制脚本放入其中。
copy /b 7zSD.sfx + config.txt + Installer.7z MyInstaller.exe
现在,每次需要重建部署包的新版本时,您只需编辑 运行 Install.bat。
使用开源 7zip SFX-Packager 很简单 - 只需将 "Drag & drop" 个文件夹添加到它,并创建一个 portable/self-extracting 包。