使用WiX或Inno Setup捆绑几个MSI文件的安装

jos*_*oli 4 windows-installer distutils inno-setup wix cx-freeze

我使用cx-freeze为Python应用程序创建MSI安装程序.我们称之为应用程序"A".它取决于另一个应用程序"B".我希望我的"A"安装程序包含并运行"B"的MSI安装程序.如何使用Inno Setup或WiX工具集创建引导/链接安装程序?

jos*_*oli 5

这是一个基本的Inno Setup脚本,它将两个MSI安装捆绑到一个安装程序中.由于安装程序仅用于安装MSI文件,因此不需要应用程序目录.要避免创建应用程序目录,请使用"CreateAppDir = no".(感谢TLama!)

[Setup]
AppName=My Bundle Installer
AppVersion=0.1
DefaultDirName={pf}\MyCo\MyBundle
DefaultGroupName=My Bundle Group
Uninstallable=no
CreateAppDir=no

[Files]
Source: "A.msi"; DestDir: "{tmp}"
Source: "B.msi"; DestDir: "{tmp}"

[Run]
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\A.msi"""
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\B.msi"""
Run Code Online (Sandbox Code Playgroud)

  • 如果这是让你麻烦的原因,请在脚本中将[`CreateAppDir`](http://jrsoftware.org/ishelp/topic_setup_createappdir.htm)指令设置为"no",不会创建任何目录,也不会创建目录选择页面将会显示.[1] (3认同)