When I run an MSI (without parameters) I usually have to click my way through dialog boxes and choose if I want to install to current user/all users, the target directory, etc etc. What happens when I run the MSI with /qn (silent mode). How do I find what answers where automatically chosen for all those dialog boxes?
If you are looking for complete silence then you also need the MSI to run in quiet mode. You achieve this by running the msiexec.exe with the /qn switch. This switch means quiet and no interface.
Silent Mode for Windows. The silent installation on Windows performs the install without displaying the end user license agreement. An upgrade from a previous version happens the first time you start DataConnect. You can use the following commands.
Properties are global variables used by Windows Installer during an installation. Their values can be set by the operating environment or by authoring them into the installation database.
An MSI is a basically a database. You can use Orca to open it and view/change settings.
I hope this has at least geared you in the right direction.
Edit:
For instance, download the installer for WiX 3.0 and open it in Orca.
WIXUI_INSTALLDIR
property is set to APPLICATIONFOLDER
. APPLICATIONFOLDER
is set to have a default of "vqee3ld3|Windows Installer XML v3
" or something similar. InstallDirDlg
fires the event SetTargetPath when the user clicks the Next control. The Argument this event sets is WIXUI_INSTALLDIR
, which in turn sets APPLICATIONFOLDER
You could try editing these properties and running the installer to see how the properties are changed. If you have default properties you'd like to set you can run. For instance, close Orca to release the lock on the msi file and run:
msiexec /i Wix3.msi APPLICATIONFOLDER="C:\Program Files\WiX" /qn
More on MSI table structures in this powerpoint
It is correct that you can set PUBLIC properties via the command line. These properties are always uppercase, and generally always listed in the Property table, though this isn't guaranteed to be the case. By reviewing the Property table you should be able to decode what each public property does. If not, there is usually documentation accompanying the MSI in form of a PDF or readme.txt that can help.
With the right tool you can also view the details of each MSI dialog and check the events that have been defined to set them. This requires a tool such as Installshield or Wise.
Another possible option for silent installation is a built-in MSI feature that I have just become aware of: the AdminProperties property. See information here: http://msdn.microsoft.com/en-us/library/aa367542(v=vs.85).aspx
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With