将命令行变量传递到基于WiXx的Windows Installer MSI

时间:2011-06-10 10:50:56

标签: wix windows-installer command-line-arguments

我正在使用WiX构建MSI安装程序,我正在使用WixUI_Advanced。我的ApplicationFolder的定义如下所示,遵循另一个SO答案(WiX tricks and tips)中的建议。

  <Directory Id="TARGETDIR" Name="SourceDir">
     <Directory Id="$(var.PlatformProgramFilesFolder)">
        <Directory Id="APPLICATIONFOLDER" Name="$(var.InstallName)">

我现在想让用户选择进行静默安装,并在路径上传递ApplicationFolder名称,相对于相应的程序文件文件夹或绝对名称。

我知道我可以在msiexec,的命令行上传递公共属性值,但是如何将其用作ApplicationFolder的值,以及如何为绝对路径和相对路径设置它。

1 个答案:

答案 0 :(得分:17)

您只需在运行msiexec时在命令行上定义属性:

msiexec /i product.msi APPLICATIONFOLDER="C:\Program Files\Company\Product\"

这些文件将被安装到“C:\ Program Files \ Company \ Product”目录中。

我建议在这里使用绝对路径。相对路径可能会导致意外结果。