我正在创建一个用于安装我的应用程序的Visual Studio 2010安装项目。我的应用程序通过为不同的系统位数提供多个可执行文件来工作,并检测您是在32位还是64位系统上运行。
如果它是64位系统,我想安装程序安装Visual C ++ 2010 x64 Runtime。将此设置为先决条件,禁用32位系统上的安装。有没有办法将此设置为先决条件,但仅限于64位系统,而不需要使用两个不同的安装程序?
答案 0 :(得分:2)
您需要为64位版本和32位版本创建单独的MSI文件,以处理WOW64的特性。
无法同时安装一个64位和32位版本的MSI:
<强> Different Packages are Required for Different Processor Architectures 强>
因为您将拥有单独的MSI文件,所以应该很容易将64位VC ++运行时可再发行组件分别添加到64位MSI和32位MSI到32位MSI。
当然,您可以创建一个检查系统体系结构的引导程序,然后启动相应的MSI文件。我相信dotNetInstaller提供了related question中指出的机制。