A little while back I described a method of searching for errors in a verbose MSI log file. At the end of that post, I listed an MSI log parsing tool named wilogutl.exe that ships as a part of the Windows Installer Platform SDK. I found out today that this tool does not parse log files created by Windows Installer 3.1. If you try to parse an MSI 3.1 log file with wilogutl.exe, you will see an error dialog that says “Log file created with version higher than this tool supports”.
This is a known issue with wilogutl.exe that still needs to be addressed. In the meantime, you can do the following to workaround this:
- Open the verbose log file in a text editor such as notepad
- Change the version number in the first line of the log file from 3.01.xxxx.xxxx to 3.00.xxxx.xxxx
- Save and close the verbose log file
- Run wilogutl.exe again and load the log file
For example, the following appears in the verbose log file created on my development machine (which is running Windows Server 2003 with SP1) when I installed Visual Studio .NET 2003:
=== Verbose logging started: 8/4/2005 10:40:02 Build type: SHIP UNICODE 3.01.4000.2435 Calling process: C:\Documents and Settings\astebner\Local Settings\Temp\SIT12447.tmp\setup.exe ===
When I changed it to the following, wilogutl.exe started working correctly for me:
=== Verbose logging started: 8/4/2005 10:40:02 Build type: SHIP UNICODE 3.00.4000.2435 Calling process: C:\Documents and Settings\astebner\Local Settings\Temp\SIT12447.tmp\setup.exe ===
<update 8/23/2005> The newest version of the Windows Installer PSDK contains an updated version of wilogutl.exe that will correctly parse log files produced by Windows Installer 3.1. The above steps can be used to enable older versions of wilogutl.exe to parse 3.1 log files.