Troubleshooting Installshield Errors with Windows Installer Logging

I spend a large part of my time testing InstallShield installers and I kid you not, I’d rather eat worms. Breakfast, lunch, and dinner. ..Midnight snack too. Worm smoothies, worms on toast, worms as a mixer with gin, Worm Cordon Bleu. For a week.

The complexity is mind boggling, confusing and frustrating. InstallShield is not easy for the developer or the test engineer. The development application is very error prone.

Recently we were perplexed with an InstallShield fatal error that failed to log anything to the InstallShield log file. Perusing the Web for related information to the error number we were getting (which sadly is the best way to troubleshoot InstallShield issues) I found that Windows has an installer logging service built in. When I enabled this service, I was able to get more detail of what was going on down in the guts of the underlying msi.

Partly for your knowledge and partly for mine (because I’ll forget how at some point), I’m going to document how to enable the Window’s Installer Logging Service here:

  1. Open/run regedit and navigate to the following path:
  2. Add the following string value to the Installer directory: Logging
  3. Add the following data/value to the Logging string value: voicewarmup

    The letters in the value field can be in any order. Each letter turns on a different logging mode. Each letter’s actual function is as follows for MSI version 1.1:
    v – Verbose output
    o – Out-of-disk-space messages
    i – Status messages
    c – Initial UI parameters
    e – All error messages
    w – Non-fatal warnings
    a – Start up of actions
    r – Action-specific records
    m – Out-of-memory or fatal exit information
    u – User requests
    p – Terminal properties
    + – Append to existing file
    ! – Flush each line to the log

    Your completed registry entry will look like this:

Once the registry change is made your new installer logging will show up in your Temp directory (temp is defined by the temp system variable). The log in the directory will have a name that starts with the letters MSI  and will be followed a random number.

Happy troubleshooting!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.