我正在构建一个MSI软件包,该软件包应安装特定可执行文件的多个版本之一,具体取决于Windows版本(即在Windows Vista中使用新功能的版本,以及自行完成工作的版本)。
可执行文件的名称应该相同,无论安装哪个版本(否则这将是微不足道的,不是吗?)。
使用Windows Installer实现此目的的正确方法是什么?
答案 0 :(得分:2)
执行此操作的绝对最佳方法是使EXE文件能够检测其自己的操作环境,并根据操作系统提供的内容选择不同的方法,以便只有一个二进制文件可以处理。
这有很多原因:
如果必须部署两个二进制文件,我将使用另一个EXE文件副本创建一个新组件,并使用不同的文件名或相同的文件名安装它,但安装在不同的安装文件夹中。然后,使用Windows安装程序条件,使用文件对组件进行调整,使其与安装互斥。这样可以进行适当的修补和升级。