Sometimes things do not behave the way you expect them to do. That is just how it is. So, what can you do about that?

Here are some hints that may help you troubleshoot installations made by Windows Installer using MSI packages.

Install MSI With Logging Enabled

When you use msiexec.exe to install an MSI package from the command line, you can tell it to log the actions taken during the installation. This can be extremely valuable in debugging why an MSI does not behave the way we want it to. Logging is enabled by using the command line switch /l (letter L).

Here is an example:

msiexec.exe /i mypackage /l* mylog.txt

There are different levels of logging. Using /l* will log everything. You can run msiexec.exe without parameters to show a list of available command line switches.

Enable Permanent Logging

It can be useful to enable logging of MSI activity if you are troubleshooting installation of Group Policy Objects (GPO). Microsoft has an article that explains how to enable and disable Windows Installer logging. It also explains how to find the logs after they are created.