在设置属性页上的前提条件中,我选择了从组件供应商的网站下载前提条件的选项
要安装的先决条件选项中没有Windows Installer 4.5。
因为每个即时消息都在自定义操作中使用sqlexpr_x64_ENU.exe安装我的安装程序,所以在提取sqlserver弹出窗口后运行安装程序
此Windows Installer软件包有问题。作为安装程序一部分运行的程序未按预期完成。与您的支持人员或包装供应商联系
我在Windows 10上使用VS2017
答案 0 :(得分:1)
排除MSI引擎 :这些天您不应将Windows Installer 4.5包含在任何软件包中。 This runtime is from back in the day of Windows Vista-我们在版本5上已经很久了,我认为Windows Installer应该仅从今天开始通过Windows Update进行部署。将运行时排除在设置之外。
无并发 :您无法通过自定义操作从另一个MSI设置中运行MSI设置。这是由于技术限制。当MSI运行其实际安装顺序时,会设置一个 mutex
,并且从中触发另一个安装顺序将失败。
Setup.exe启动器 :您需要的是通过 setup.exe
启动器安装必备组件。这将以串行方式而不是并行方式运行安装。您要安装哪个版本的SQL Server?我在Visual Studio安装程序项目启动器中仅看到几个版本。
其他工具具有的功能允许您按顺序安装带有各种嵌入式软件包的setup.exe。在前面的答案中,我已经解释了无数次如何做到这一点。以下是我很快发现的一些内容:
答案 1 :(得分:1)
一般情况:
问题不是Windows Installer 4.5,这是事实,您尝试执行递归MSI安装(您内部的SQL安装),这将导致该安装失败。
MSI 4.5引擎已经过时了,已经有10年的历史了,无论如何这都不是问题,也不清楚为什么您相信它。但是它在我的VS 2017安装项目先决条件的先决条件列表中-参见3-即使您几乎肯定不需要它。
在VS安装项目的先决条件中有一些SQL Express选项可用-右键单击解决方案资源管理器中的项目,然后依次选择“属性”和“先决条件”。