我的意思是将所有安装程序合并为 1 个大型安装程序。
我不确定,如果你的意思是从几个中做出一个 msi。如果您已经构建了 msis,这可能会解决,但在大多数情况下,分离是有原因的。
但是现在我假设与其他人一样,您想要一个将所有 msi 设置组合成一个的设置,例如带有打包/自解压部分,但可能带有一些自己的逻辑。
这是一种非常常见的设置模式,有人称之为“引导程序”。不幸的是,到目前为止,大多数引导工具的成熟度都无法与 msi 创建工具相提并论,因此我认识的大多数公司都编写了自己的引导程序,其中包含他们想要的对话框和控制逻辑。这可能是一项非常昂贵的工作。
如果您的要求不高,这可能听起来很简单。只是开始一个接一个的进程。但是无缝进程栏怎么样,卸载(单个或捆绑)怎么样,修复,修改怎么样,如果其中一个失败或需要重新启动,还涉及修复/卸载/修改/更新。等等。
如前所述,将多个设置捆绑在一起的首要问题之一是关心用户应该看到多少和哪些卸载条目,如果您的引导程序不创建自己的,则组合一个。如果这对您来说不是问题,那么您有机会找到一个简单的解决方案。
我知道至少三种用于引导程序的工具,有些人称之为套件或捆绑包。我只能在这里提到它们:
WiX 至少有一个叫做“Burn”的东西。Google for WiX Burn 你会找到它。我还没用过,所以说不清楚。
InstallShield Premier 并不是大多数人所说的廉价产品,它允许设置相同的“套件”。我不想在这里评论质量。
在 Windows SDK 中有(曾经有过?)一种 setup.exe 模板,用于显示如何从程序中开始安装 msi。我从来没有真正研究过这个例子来讲述更多关于它的信息。