Pass command line variables into WiXx based Windows Installer MSI
You just define the property on the command line when running msiexec:
msiexec /i product.msi APPLICATIONFOLDER="C:\Program Files\Company\Product\"
The files will be installed into "C:\Program Files\Company\Product" directory.
I'd advice using absolute path here. A relative path may lead to unexpected results.
![Jeroen Huinink](https://i.stack.imgur.com/jmYNT.png?s=256&g=1)
Jeroen Huinink
I work at a software company in the Netherlands. We are developing applications in a wide variety of languages, including, C#, Java and Javascript.
Updated on June 05, 2022Comments
-
Jeroen Huinink about 2 years
I am building an MSI installer with WiX and I am using the
WixUI_Advanced
. The definition of myApplicationFolder
looks like this, following the advice in another SO answer (WiX tricks and tips).<Directory Id="TARGETDIR" Name="SourceDir"> <Directory Id="$(var.PlatformProgramFilesFolder)"> <Directory Id="APPLICATIONFOLDER" Name="$(var.InstallName)">
I now want to give the user the option to do a silent install and pass the
ApplicationFolder
name on the path, either relative to the appropriate program files folder or absolute.I know that I can pass public property values on the command-line of
msiexec,
but how do I use that as value forApplicationFolder
and how do I set this up for absolute vs relative paths.