非常感谢有关如何安装MSI并通过xml文件修改其默认属性值的任何帮助,该文件具有在安装期间插入的新值。然后,通过引用xml文件将新属性值作为参数传递给MSIEXEC,因此将如下所示:
msiexec / I MyMSIFle.msi PROPERTIESFILE = ProdProperties.xml
需要这是因为我们有许多环境。为了论证,让我们说DEV,TEST和PROD。每个环境的MSI属性值都不同,并且将保存在离散的XML属性文件中,例如, DEV-Properties.xml,TEST-Properties.xml和PROD-Properties.xml。
MSI是一个单一的通用MSI,我们打算在所有三个环境中成功安装,只需传入正确的属性值,所有这些都嵌入在各个XML文件中。
我会特别高兴接受使用Powershell,Windows Batch脚本,VBScript等的解决方案,但没有第三方软件,因为我们在公司内部严格限制使用任何此类产品。
谢谢
答案 0 :(得分:0)
我建议您为MSI创建自定义操作。以下是一个示例:
您可以将.xml文件名作为属性传递,并将文件从给定路径反序列化为对象。然后,您可以从对象覆盖更多属性。
无论如何,我认为在安装程序中包含这样的逻辑是不明智的。我认为更好的方法是在注册表中写一个简单的标志,告诉我们哪个环境有问题,让安装好的程序让其休息。