是否可以通过诸如TARGET DIR之类的参数更改msi(项目设置)的产品代码和名称?
我需要在同一台计算机上安装多个版本(DEV,QA,Stg和Prd)。所以我在命令行中运行我的msi。
C:\ Installer \ client.msi / qb / l * log.txt TargetDir =“ C:\ Test \ DEV ” ProductCode = { GUID1 }“ C:\ Installer \ client.msi / qb / l * log.txt TargetDir =“ C:\ Test \ QA ” ProductCode = { GUID2 }“ C:\ Installer \ client.msi / qb / l * log.txt TargetDir =“ C:\ Test \ STG ” ProductCode = { GUID3 }“ C:\ Installer \ client.msi / qb / l * log.txt TargetDir =“ C:\ Test \ PRD ” ProductCode = { GUID4 }“
当前问题:
上面的命令不起作用。
答案 0 :(得分:0)
实例转换 :我想它的内置方法是instance transform,但我并不特别喜欢这种构造。以下粗体链接提供了大量有关此的更多信息。
虚拟机/虚拟程序包(App-V) :处理多种程序包使用的现代方法可以是使用测试虚拟机或虚拟程序包(App-V )?我发现这是包装方面最简单的选择。我会推荐。
预处理器/编译器变量 :如果您使用的是WiX,则可以尝试使用编译器变量来允许从同一源文件编译不同版本的MSI。 。让我添加一些链接:
基于上述主题的一些建议以及此处的其他一些选项。这些是Stackoverflow和Serverfault链接,让我通过链接来避免过多的重复(本质已在上方):