Windows installer 安装x86和;x64 VC++;10次运行?

Windows installer 安装x86和;x64 VC++;10次运行?,windows-installer,installshield,visual-c++-2010,Windows Installer,Installshield,Visual C++ 2010,我有一个基本的MSI项目,其先决条件刚刚从VC++8更改为VC++10 SP1。它是一个32位安装程序,安装一个32位程序和几个64位组件。(它使用LSP进行互联网监控,因此需要一个32位和64位LSP,以便监控这两种应用。)因此,64位系统上都需要32位和64位VC++运行时 对于VC++8合并模块,这不是一个问题,因为WinSxs(并排)文件夹。现在MS已经放弃了这一点,转而将所有运行时都放在C:\Windows\System32中,将两个VC++10运行时作为先决条件安装是不起作用的,因为

我有一个基本的MSI项目,其先决条件刚刚从VC++8更改为VC++10 SP1。它是一个32位安装程序,安装一个32位程序和几个64位组件。(它使用LSP进行互联网监控,因此需要一个32位和64位LSP,以便监控这两种应用。)因此,64位系统上都需要32位和64位VC++运行时

对于VC++8合并模块,这不是一个问题,因为WinSxs(并排)文件夹。现在MS已经放弃了这一点,转而将所有运行时都放在C:\Windows\System32中,将两个VC++10运行时作为先决条件安装是不起作用的,因为它们相互覆盖。(可能是因为64位运行时合并模块被重定向到SysWow64,即使它不应该被重定向。)

有没有办法安装这两个运行时?我不介意使用独立的vcredist_x64安装程序而不是x64合并模块,但当我尝试启动时,出现了“另一个安装进程正在运行”错误。是否可以暂时禁用重定向


我还考虑了文件夹内运行时安装,其中DLL与应用程序放在同一个文件夹中,但由于LSP必须放在系统文件夹中,因此我担心再放一组运行时。

您不能同时运行2个MSI(您的MSI和vc_redist_x64),这就是您收到错误的原因。 您不能在一次安装中使用x86和x64合并模块,因为您的主MSI是x86

我建议您使用bootstrapped SETUP.EXE和先决条件。在InstallShield中包括vc_redist_x64作为先决条件。它在您的MSI之前安装所有需要的VC redist。

您不能同时运行2个MSI(您的MSI和VC_redist_x64),这就是您收到错误的原因。 您不能在一次安装中使用x86和x64合并模块,因为您的主MSI是x86
我建议您使用bootstrapped SETUP.EXE和先决条件。在InstallShield中包括vc_redist_x64作为先决条件。它会在MSI之前安装所有需要的VC Redists