Visual studio 2017 Visual Studio 2017安装程序项目-包括VC++2015可再发行

Visual studio 2017 Visual Studio 2017安装程序项目-包括VC++2015可再发行,visual-studio-2017,installation,redistributable,visual-studio-setup-proje,Visual Studio 2017,Installation,Redistributable,Visual Studio Setup Proje,我正在使用Visual Studio 2017中的Visual Studio安装程序项目类型为我的应用程序创建安装程序 我希望我的安装程序用我的应用程序安装VisualC++ +可再分发2015。我已经下载了vc_redist.x86.exe文件,并将其包含在我的项目中,我正在尝试将安装作为安装时的自定义操作。我使用/install/passive/norestart参数启动 当我执行安装程序时,当它执行自定义操作时,会出现以下错误: 此Windows Installer软件包有问题。作为安装程

我正在使用Visual Studio 2017中的Visual Studio安装程序项目类型为我的应用程序创建安装程序

我希望我的安装程序用我的应用程序安装VisualC++ +可再分发2015。我已经下载了vc_redist.x86.exe文件,并将其包含在我的项目中,我正在尝试将安装作为安装时的自定义操作。我使用/install/passive/norestart参数启动

当我执行安装程序时,当它执行自定义操作时,会出现以下错误:

此Windows Installer软件包有问题。作为安装程序一部分运行的程序未按预期完成。请与您的支持人员或软件包供应商联系

我可以在命令提示符下运行vc_redist.x86.exe/install/passive/norestart,没有问题或错误

是否包含VisualC++作为我的安装的一部分?

的任何建议或替代方法 建议:迁移到Burn bootstrapper/downloader/sequencer,以便将来更灵活地控制下面的WiX链接

或者,请尝试下面的“先决条件”部分,首先选择要安装的Visual Studio 14条目,或者尝试下面的“合并可用模块”部分。请注意合并模块的免责声明

. -与更多信息的链接很多。 日志和互斥:日志文件说明了什么?从技术角度来看,通常的问题是,由于技术运行时限制,您无法从自己正在运行的MSI安装程序中安装另一个MSI包。设置互斥锁可防止多个MSI安装事务同时发生。检查日志。我相信这个可再发行版本是基于MSI的,所以当您像这样从自定义操作运行EXE时,您会看到这个问题

部署工具:VisualStudio安装程序项目非常有限,随着时间的推移,大多数人似乎会从它们迁移到另一个部署工具和WiX的Burn功能引导器/下载器/序列器可以实现您需要的功能

先决条件:Visual Studio安装程序项目没有单击先决条件。。。按钮,可通过setup.exe引导程序定义有限数量的先决条件以进行安装,而不是从MSI本身启动,而是从其引导程序setup.exe启动-这意味着您不从自己的MSI启动安装,而是在安装开始之前启动安装-因此它可以正常工作。我不确定Visual Studio 14的条目是否适用于您需要的运行时版本。我想你可以试一试


合并模块:有一些合并模块可以安装VisualStudio运行时,这一点在页面上已经有点过时了,但是现在它们似乎不够重要。从2015年起,VisualStudio运行时基本上更加复杂,首选EXE安装程序。必须阅读链接-请。若要查找相关合并模块,请在%ProgramFilesx86%下搜索*.msm文件(如果已安装Visual Studio和/或Windows SDK)。合并模块可以安装在您自己的软件包中,而无需setup.exe启动器。在Visual Studio中,右键单击您的安装程序项目,添加,然后合并模块…

您不能将该可再发行组件作为自定义操作运行,因为它是基于MSI的安装,并且您不能调用VC redist one运行递归MSI安装


在VisualStudio安装项目中,您应该使用先决条件功能。在解决方案资源管理器中右键单击安装项目,选择属性,然后选择先决条件。这将生成一个setup.exe以安装MSI文件所遵循的先决条件。据我所知,微软Visual C++ 14是VisualStudio 2015运行时。 这不是在回答任何问题,而是在暗示其他问题。对我来说,VS安装程序项目太有限了:。有时你想警告人们,他们使用的方法会让他们陷入熊陷阱。请参阅上面的先决条件部分-您可以使用此功能为您的VS版本安装VC++运行时,但它非常有限。WiX/Burn可以安装您想要的任何东西。