Windows installer 如何为两个应用程序(exe和msi)创建单个安装程序?

Windows installer 如何为两个应用程序(exe和msi)创建单个安装程序?,windows-installer,Windows Installer,我看到许多示例将独立运行安装程序…但在我的安装程序中,它将允许运行第一个exe,如果出现任何错误,它必须回滚…如果成功,它必须安装第二个msi应用程序 我试过wix,但感觉很难…我有两个想法。即使在我想到他们的时候,我也在想“一定有更好的办法”,但也许他们会为你播下一些种子,这样你就可以找到正确的方法 想法一,你能检查一下你想安装的两个第三方应用程序是否可以作为合并模块使用吗?如果是这样,那么您可以将它们合并到您自己的设置程序中 想法二,假设生活不是那么简单,在你自己的安装程序中,你可以创建一个

我看到许多示例将独立运行安装程序…但在我的安装程序中,它将允许运行第一个exe,如果出现任何错误,它必须回滚…如果成功,它必须安装第二个msi应用程序


我试过wix,但感觉很难…

我有两个想法。即使在我想到他们的时候,我也在想“一定有更好的办法”,但也许他们会为你播下一些种子,这样你就可以找到正确的方法

想法一,你能检查一下你想安装的两个第三方应用程序是否可以作为合并模块使用吗?如果是这样,那么您可以将它们合并到您自己的设置程序中

想法二,假设生活不是那么简单,在你自己的安装程序中,你可以创建一个自定义动作dll。在该dll中,您可以编写启动第三方应用程序安装过程的代码?我确信您可以构造自定义操作,以便生成一个进程,等待它完成,并查询其退出代码。因此,在这方面,您可以了解成功/失败,并相应地提交/回滚。但我甚至不确定这种方法是否有效(两个同时运行的安装程序听起来可能有问题)


如果您熟悉Windows Installer技术,我建议您创建自己的安装程序,并将这些第三方应用作为先决条件。创建允许您控制安装过程的自定义操作。此外,您不能从另一个MSI安装一个MSI(排除是链接的MSI,但此任务更复杂)
此外,如果WiX不是必需的,可以尝试在AdvancedInstaller的帮助下进行,创建安装程序比WiX更容易,而且它们也有免费版本。

这两个应用程序都是“您的”吗?或者他们是第三方?如果其中一个是,而另一个不是,你想叫哪个?我认为这可能是一个前进的方向,但你需要给我们更多的细节。这两个应用程序都来自第三方…我有自己的应用程序,但如果我想运行我的应用程序,我必须在系统中安装两个第三方应用程序。但最终用户必须感觉它是一个单一的安装。至少在第一个应用程序安装之后,我必须继续第二个。用户永远不希望同时安装两个应用程序