Don*_*nce 6 windows-installer msi
我特别希望在一台机器上安装两次 msi。双重安装的目的是首先安装在 pre-production 文件夹下,在部署到生产文件夹之前在安全的环境中运行部署。
我们通常使用不同的机器来表示这些不同的环境,但在这种情况下,我需要使用同一个盒子。
我得到的两个场景如下:
第一种情况还不错,因为我们可以在生产文件夹下明智地卸载和重新安装,但第二种情况很痛苦,因为我们不想卸载实时生产部署。
我可以给 msiexec 一个设置来允许这样做吗?
我可以使用更合适的不同方法吗?
不可能两次安装完全相同的 MSI。您也许可以打开 MSI 并更改 GUID 以使其再次安装。请注意,这种方式有龙。除非你特别幸运或者安装/产品特别简单,我几乎可以保证你的第二次安装不仅不会工作,而且很可能你也会破坏第一次安装。我强烈建议您解决任何让您认为有必要使用一个盒子的问题。
小智 5
看看 Scott Willeke 的 Less Msiérables (LessMSI) 能为您做什么...
http://lessmsi.activescott.com/
使用它来提取和更改 MSI 的 guid 和/或内容,重新打包并执行您的“安装两次”需要。
Windows Installer 有一个内置功能,应该允许你做你想做的事情:“实例转换”,但尽管我有所有的 MSI 经验,但我并没有经常使用它。它允许您通过 MSINEWINSTANCE 属性和命令行中的转换集多次安装相同的产品。
如果这是第三方应用程序,我会选择已经推荐的虚拟化方法。您应该知道,您可以使用Microsoft App-V 虚拟程序包来虚拟化程序包,也可以仅使用常规的VMWare或Virtual PC实现(虚拟 PC 与虚拟程序包相对)。
与普通应用程序相比, Microsoft App-V 虚拟包和新的虚拟化技术允许一些新的东西:
如果这是一个内部应用程序,您可以在其中与开发团队进行对话,一个可行的解决方案是构建第二个开发 MSI,将预发布版本与生产版本并排安装。然后需要编写这些 MSI 文件,以便能够以文明的方式共存。这实际上非常复杂 - 并且涉及诸如不争夺相同的文件关联,不从不同位置注册系统范围的 COM 组件,不覆盖彼此的注册表项,不使用相同的快捷方式,不覆盖彼此的设置文件(文本、xml、ini 等)。有很多挑战。
最后,也是我们通常选择的方法,我们可以让 MSI 根据传递给它的参数安装不同的配置。因此,您可以使用名为CUSTOM_ENVIRONMENT = "DEV"的属性来安装应用程序的测试实例。这种方法依赖于能够以不同风格安装自己的单个 MSI - 但是 - 因此似乎与您的要求不符。
总而言之(按照我的主观偏好):
一些链接:
归档时间: |
|
查看次数: |
7277 次 |
最近记录: |