Thursday, February 17, 2005 4:37 PM
philipnet
Deploying MSI files
Well, this week I took the plunge and tried to distribute the MSI of Firefox I had previously created.
Firstly I checked out the ever useful MyITForms and found an article on Distributing MSI Applications with SMS which started me off on the right track. I could then combined that with pages 440–445 and 449–459 of Systems Management Server 2003 Administrator's Companion. Now some of that section isn’t appropriate to distributing MSI files, but it’s worth glancing over – the first time I didn’t read all the way to p.459 so I missed the Windows Installer tab bit!
So far I’ve done the process a couple of times since with various degrees of success. Here are my handy hints for distributing MSI files:
- Run the SMS Administrators console from the same machine where the package is going to be sourced from. It makes it a lot easier if you can work with local paths and the Console will help you by putting you in the right folder when appropriate.
- You need to create an Administrative Installation of the MSI file, so run
msiexec /a <full path of msi file>
and it will pop up a GUI frontend to storing it somewhere.
- SMS 2003 (with SP1?) allows folders to be created in Packages and Advertisements, so use them to structure your software deployment packages.
- When creating the program don’t forget to import the MSI file into the Windows Installer tab.
(N.B. You can import multiple MSI files per package – but only one file instance of a file per package)
- You can easily uninstall MSIs as well as install them – so why not create an uninstall program?
(BTW, it’s
msiexec /i <full path of msi file> /q
for a quite installation and
msiexec /x <full path of msi file> /q
for a quiet uninstallation).
- After creating the programs don’t forget to distribute the programs to the distribution points.
If you do forget, then re-advertise the program after distribution has completed.
- Organise and name the adverts the same as the package you’ve just created – it makes it a lot easier to keep track of what advert is for which package this way.
- Where I work we generally have installation programs run when users aren’t logged in. I therefore set the program to download and then run, rather than have (loads of) clients all hit our network bandwidth for the brief few minutes between class changes.
- On that note, do set the Legacy Client Software Installation Account (Component Configuration —> Software Distribution Properties). Just ignore the “Legacy Client” bit in the text – you need that account set if you want to install software without any users logged on!