Installation 如何在高级安装程序中安装VC可再发行文件?

Installation 如何在高级安装程序中安装VC可再发行文件?,installation,windows-installer,runtime,Installation,Windows Installer,Runtime,有很多关于如何在MSI文件中包含VC运行时的文章和帖子 我正在使用高级安装程序和VS2008 有人说使用合并模块;我不确定它们是否能正常工作,也就是说,如果它们在我的服务(依赖于它们)启动之前进入,并且在安装过程中合并模块,那么我就有一个恼人的习惯,即卸载时要求重新启动 我尝试过简单地从MS复制.exe可重测包,并在Install下使用自定义操作通过/q开关执行它们。我可以运行像这样的其他安装程序(例如SQLITE),它可以正常工作。但是MS文件似乎没有安装。它们当然不会出现在程序或更新列表中

有很多关于如何在MSI文件中包含VC运行时的文章和帖子

我正在使用高级安装程序和VS2008

有人说使用合并模块;我不确定它们是否能正常工作,也就是说,如果它们在我的服务(依赖于它们)启动之前进入,并且在安装过程中合并模块,那么我就有一个恼人的习惯,即卸载时要求重新启动

我尝试过简单地从MS复制.exe可重测包,并在Install下使用自定义操作通过/q开关执行它们。我可以运行像这样的其他安装程序(例如SQLITE),它可以正常工作。但是MS文件似乎没有安装。它们当然不会出现在程序或更新列表中


有人知道一种简单有效的方法将VC2008运行时合并到MSI安装中吗?

这通常是通过先决条件完成的。当前高级安装程序对于大多数VisualC++重新分配表具有预定义的先决条件。所以,你需要做的就是把它们添加到你的项目中。

< P>如果你运行VisualC++ +作为高级安装程序自定义动作的一部分而没有/Q开关,你会发现它错误地“另一个安装正在进行中”。p> 我正在尝试先安装先决条件(在安装程序的安装阶段之前),如果失败,我将使用预定义的先决条件(如上)。但是,当预定义的先决条件需要企业许可证(我没有)时,在VCRedist上使用/q

更新

决议如下:

  • 在安装程序中包括VCRedist
  • 如果有新的自定义操作“启动已安装文件”,请从已安装文件中选择VCRedist
  • 使用命令行/install/q/norestart
  • 在“Finish Execution”(完成执行)之后拖动列表中最后一个自定义操作
  • 您的自定义操作对话框应该如下所示