我需要部署一个针对Windows 64位和32位的软件设置。我有两个独立的Windows Installer数据库(用WiX为每个平台创建),并且我使用dotNetInstaller将两者合并到一个安装引导程序可执行文件中。如何将64位和32位Windows安装程序包作为单个安装程序部署?
我目前使用的是dotNetInstaller的版本1.10,并设置了auto_close_if_installed=True
,因为我想从用户角色隐藏引导程序。尽管如此,dotNetInstaller坚持在我的安装程序运行时显示一个窗台进度条窗口,并且不会真正自动关闭。用户需要确认一个对话框,告诉他该应用程序已成功安装。但真正的优势是它不支持Windows 8(还)。
升级到dotNetInstaller的更高版本似乎打破auto_close_if_installed
,所以它更糟糕。
所以我的问题是:当前的技术状态是在单个可执行文件中部署这两个设置。请问Wix Burn是否是一个选项?
我知道,在一个理想的世界中,我只是为我的客户提供适用于任一平台的单独安装程序。但他们碰巧完全不了解这些微妙之处,他们中的大多数甚至不知道他们使用的是什么平台。
我以前用过这个烧伤,但感觉有点像矫枉过正。我很想看看其他人的想法。 – bricelam
@Brice:事情是,烧伤似乎也不是很可靠。 Visual Studio Update 1 CTP 3使用它进行部署,并且由于Burn而无法在我的计算机上安装:[Microsoft Connect 766849](https://connect.microsoft.com/VisualStudio/feedback/details/766849/visual- studio-2012-update-1-ctp-3-crash-installation-during) –
我建议为此烧录,一个包装上标有InstallCondition =“NOT VersionNT64”,另一个InstallCondition =“VersionNT64”。使用刻录可以创建一个exe包,用户不必运行正确的包。 – Neil