如何在另一个安装程序中创build安装程序?

我想创build一个Windows安装程序,第一步我想调用另一个安装程序(将安装从属应用程序的组件),第二步我想安装我自己的应用程序。 我想在一个安装过程中完成所有任务,并且手头有一个依赖的组件安装包(一个exe文件)。

任何好的工具或样本可供参考? 我更喜欢使用VSTS或Microsoft或开源易于使用的工具。 🙂

在此先感谢乔治

你可能想看一看Microsoft Bootstrapper ,假设依赖组件是类似.NET的库或类似的库,那么它就相当简单了。

如果你想创建一个Windows Installer (MSI)包,那么看看Windows安装程序XML (WiX)。 但是,您需要先了解MSI如何工作 。 一旦理解了Windows Installer,WiX真的很简单,但是试图同时学习可能会让人感到困惑。

对于一个基本的,复制一些文件,提取/运行一些东西,键入安装程序,然后NSIS是相当简单的脚本,你可以在一天左右,选择了。

Nsis与此修改 。

更新:似乎嵌套MSI安装是有点可能的。 但是,它需要使用Windows Installer SDK中的工具进行一些调整,并且有许多缺点。

以下文章有详细信息:

如何创建一个嵌套的.msi包

Microsoft建议不要使用此功能(请参阅此相关的答案,并在此列表中指向20)。

但是,您也可能想要查看不同的安装系统(如NSIS),或者创建一个在安装之前安装依赖关系的引导程序。

你可以看看Inno Setup 。 它创建exe安装程序,而不是MSIs。 它有一个基于pascal的脚本语言,所以非常灵活。

这是免费的,很容易使用。

如果您的现有安装程序不使用MSI技术,则可以使用WiX创建MSI并通过自定义操作启动现有的安装程序。 我过去做过这个

WiX是开源的。

是的,如果你使用Inno Setup来做,它会非常容易,但是有一点不同。

您必须先执行第2步,然后执行第1步。

尝试使用AutoHotkey(脚本)来检查后台中是否存在任何验证特定软件安装的进程。

在Windows系统上检查iexpress。 在短短的几分钟内,您可以创建一个安装程序,可以根据需要调用尽可能多的安装程序。