我有必备的软件安装程序xyz.msi,应该通过主安装程序pqr.msi安装。我使用Visual Studio 2015安装程序项目来创建pqr.msi安装程序。
我还需要检查某些条件,例如是否已在目标计算机上安装xyz.msi。
据我所知,我可以在pqr安装程序中添加xyz.msi作为程序集,并在下面设置属性以有条件地复制xyz.msi:
条件
但是,如何在主安装程序静默之前调用pre-requsite安装程序以首先安装/启动。这会导致嵌套安装并失败吗?还有其他更好的办法吗?
答案 0 :(得分:1)
您所指的副本上的条件实际上只是将文件安装到目标系统的条件,而是将文件复制到(例如)应用程序文件夹。它不会安装MSI,只会运行您安装的某个exe文件。
您也无法从自定义操作(即嵌套安装失败)安装MSI,因此您需要一种方法在自己的MSI之前安装它。我知道有两种选择:
https://msdn.microsoft.com/en-us/library/ms165429.aspx
http://wixtoolset.org/documentation/manual/v3/bundle/bundle_author_chain.html http://wixtoolset.org/documentation/manual/v3/bundle/
请注意,您不是使用WiX构建MSI,而只是构建引导程序包。
如果该先决条件MSI来自第三方,那么他们可能有其他安装方式,例如您添加到自己的MSI构建中的合并模块。