Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

After rolling out a new software package, I'm seeing high CPU usage on machines. One process that seems to be really active is msiexec, which really shouldn't be running. I'm watching it in process explorer and every now and then I can see it launching new processes that I can tell are related to the new software...but the processes end rather quickly.

Is there any way to get some specifics on what the Windows Installer is currently up to?

share|improve this question
add comment

4 Answers

up vote 3 down vote accepted

I'd add to the Process Explorer/Process Monitor suggestion - run FileMon and RegMon from Sysinternals too. You can filter/save a log of the msiexec and related processes, export to a csv and have a complete list of actions to the file system and registry. Compare/contrast with what has been written to the Windows Installer log, too.

You can also have a look at what Scott Willeke's Less Msiérables (LessMSI) can do for you ...

http://blog.scott.willeke.com/2008/03/less-msirables-lessmsi-is-available.html

Use it to extract and change guids and/or contents of MSI, repackage, check out all of the items in the MSI package, etc.

share|improve this answer
    
Process Monitor encapsulates all the functionality of FileMon and RegMon into one app. –  EBGreen Aug 17 '09 at 17:08
    
And RegMon/Filemon will be discontinued at the end of the month. –  dmoisan Aug 18 '09 at 3:54
add comment

Get Process Monitor from Sysyinternals (MS now). Setup the filter to only watch msiexec.exe. It will tell you all that the process is doing.

share|improve this answer
add comment

If you have control on the installation package, you can activeate the logging of the msiexec. Look at "The Command-Line Options for the Microsoft Windows Installer Tool Msiexec.exe"

share|improve this answer
add comment

Windows installer may spawn multiple instances of msiexec.exe for several reasons.

First of all Windows Installer features a user interface sequence (which can be skipped by running the install silently), and an installation sequence. The two tables for these sequences are called InstallUISequence and InstallExecuteSequence respectively. Due to the way Windows Installer allows "elevated rights" during installation, the InstallExecuteSequence will run as the System account. In other words if you launch the setup in GUI mode and kick of installation that way, you'll normally see two msiexec.exe processes.

Furthermore MSI files can launch custom actions - some of which can spawn new processes (EXE files). I believe these actions may trigger further msiexec.exe processes to show up in the task manager.

Aaron Stebner has a better explanation here: http://blogs.msdn.com/astebner/archive/2005/03/02/384088.aspx

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.