Link to home
Start Free TrialLog in
Avatar of detox1978
detox1978Flag for United Kingdom of Great Britain and Northern Ireland

asked on

Install software on 300 PC's using MSIEXEC

Hi All,

I've been asked to install some software on 300 PC's.  The company has supplied an MSI that needs switches.  I can install it silently using MSIEXEC, however it requires Admin rights.

Any suggestions on what is the best way to deploy the software?

The domain controllers are all Windows Server 2008 R2 and the end-user PC's are all Windows 7

Many thanks
Avatar of MasonWexler

You can either use a Computer Group Policy to either install a software package or run a startup script to install the software.
Avatar of Radhakrishnan

The best method will be assigned via group policy. Create a shared location where the machine or user can access the path and place the msi in it.

Edit the appropriate policy (I.e- default domain policy)>>Computer Configuration>>Policies>>Software Settings>>Software Instalaltion>>Right Click and New>>Package. Follow the wizard to complete.

So when the machine reboots next time the msi will be installed on them.
Avatar of detox1978


Thanks for the suggestions.  That will install the MSI without switches.  How do I add switches?  Here is my MSIEXEC syntax

msiexec /i "MySoftware.msi" OPTION1="Blah Blah" OPTION2="Blah Blah" /quiet

Open in new window

Be sure to test before rolling it out.

Note that when the policy applies, users will experience a one time longer startup due to the package installing.
You can use a startup script applied through Group Policy.
Your best method for deploying software (without using 3rd party deployemtn software)  is using a Computer Policy Startup Script (GPO). This allows you to deploy the software and it will install with elevated privledges. Do not use Software Installation Deployemnt with Group Policy because then you need to control the applicaiton install from Group Policy specificly.

Doing this via start up script allows the flexibility to install and manage the applicaiton install from the machine directly. You can then add code to your batch file which can create a directory and if that directory is present then don't reinstall the applicaiton.

- create a share (everyone read/execute permissions)
- create your batch file with all of the valid parameters
- create a new GPO (give it a meaningful name)
- edit the GPO, Computer Configuration, Windows Settings, Startup Script
- point to your batch file
- Link the GPO to any OU's where the computers exist in your active directory domain

perform a gpupdate /force on a computer, reboot the machine and it should install correctly.

When doing something like this the key here is to make sure that you can manually run your batch file on your computer and it installs the software the way you want it to. Once this complete, just use the GPO to deploy it.

Test your GPO with one machine first.

Yes, no need to add switches as it will install the msi automatically. Also, once you added the msi into gpo and go to properties, you will be able to see some options.
Radhakrishnan Rajayyan, the MSI requires switches.  Omitting the switches means the software does not work.

Will Szymkowski, I tried that but it didnt elevated privileges?  Any ideas?
A startup script is run as the system account and requires no elevation. When running it manually, right-click the script and select Run As Administrator.
If you want to try third party, I like to use PDQ Deploy by AdminArsenal. They have a free version, too.
Will Szymkowski, I tried that but it didnt elevated privileges?  Any ideas?

When you deploy a computer startup script it will install using the System Account. This account has privledges to install applicaitons. The installation takes place before the user can login.

Avatar of detox1978
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
You should ask the manufacturer if the switches for (let me quote you)
OPTION1="Blah Blah" OPTION2="Blah Blah"
can be incorporated into an .mst file ("a transform") which orca can create.  Maybe you meant .mst when writing .mft?

Using startup scripts or GPOs for MSI deployment... what is better?
I see disadvantages in both since the startup script will be problematic on win8.x and win10. In short: the fast startup feature which MS has introduced renders the combination of "I shutdown my computer and start it the next morning" into something different from doing a restart, because kernel hibernation is used when you shut down. With kernel hibernation active, no MSIs nor startup scripts will run! Naughty work, MS, eh? Those will only run on reboots. All for the sake of speed.

That teaches us that at-boot-time deployments might be old fashioned. WSUS can be used together with addons (wsus package publisher, a freeware) so we can deploy MSIs (with paramters, yes) at any time we like.
But you have win7 ;) no fast startup/kernel hibernation. but nevertheless, I hope you see the point.
Startup scripts: more control and options. Native GPO software deployment: easier for the beginner, enough for many packages.
" I tried that but it didnt elevated privileges?  Any ideas?" - you might have confused startup and logon scripts.
Thanks for all the suggestions.  Using Microsoft's Orca to create an MFT file worked very well.

Many thanks