Reputation: 272406
I have a MSI package that I need to install if the package is not already installed. Also I need to install it silently. The package prompts user for:
I need to override these two parameters using command line parameters or some other method. So how do I go about these two issues. I'll use VBScript for scripting.
Upvotes: 114
Views: 435130
Reputation: 11
Open Command prompt in administrative mode and type following command.
Note: replace path with your own path to msi file.
msiexec /i "C:\(your_path)\(name_of_your_msi_file.msi)" /quiet /norestart /log "E:\(your_path)\installation.log"
you can check if any error has occured during installation in "installation.log" file
Upvotes: 0
Reputation: 42246
The proper way to install an MSI silently is via the msiexec.exe command line
as follows:
msiexec.exe /i c:\setup.msi /QN /L*V "C:\Temp\msilog.log"
Quick explanation:
/L*V "C:\Temp\msilog.log"= verbose logging
/QN = run completely silently
/i = run install sequence
There is a much more comprehensive answer here: Batch script to install MSI. This answer provides details on the msiexec.exe command line options and a description of how to find the "public properties" that you can set on the command line at install time. These properties are generally different for each MSI.
Upvotes: 24
Reputation: 28346
You should be able to use the /quiet
or /qn
options with msiexec
to perform a silent install.
MSI packages export public properties, which you can set with the PROPERTY=value
syntax on the end of the msiexec
parameters.
For example, this command installs a package with no UI and no reboot, with a log and two properties:
msiexec /i c:\path\to\package.msi /quiet /qn /norestart /log c:\path\to\install.log PROPERTY1=value1 PROPERTY2=value2
You can read the options for msiexec
by just running it with no options from Start -> Run.
Upvotes: 166