我是否可以使用 MsiExec 并将安装目录与 ProductVersion 属性设置为路径的一部分?
msiexec /i C:\myapp.msi INSTALLDIR=C:\MyApp\[ProductVersion]
我是否可以使用 MsiExec 并将安装目录与 ProductVersion 属性设置为路径的一部分?
msiexec /i C:\myapp.msi INSTALLDIR=C:\MyApp\[ProductVersion]
您不能像这样在命令行上使用属性。如果在目录表中使用 [ProductVersion] 或将 INSTALLDIR 构建为 MSI 的一部分,则可以正常工作。但是,MSI 属性对命令解释器没有任何意义。
您可以在命令行上设置属性,例如
msiexec /i PROPERTY=VALUE A:\Example.msi
(来自: http: //msdn.microsoft.com/en-us/library/windows/desktop/aa367988 (v=vs.85).aspx )
您需要一个脚本来查询 MSI 的属性表以获取 ProductVersion,然后使用它来构建您的命令行。
如果这是您的安装并且这是您想要的行为,那么您最好编写一个自定义操作来自动改变 INSTALLDIR。如果这不是您的安装,而这正是您喜欢安装产品的方式,那么 ServerFault 是一个更好的地方来询问这个问题。