When authoring MSI packages, you frequently need the installation to be logged. Instead of repeatedly opening a console to type in msiexec /l* install.log /i foobar.msi, these shell context menu items may speed this process up a little. They do the same as ‘Install’ and ‘Uninstall’ but log everything (/l*) to PackageName.msi-install.log or PackageName.msi-uninstall.log, respectively.

Here are the registry entries:
[HKEY_CLASSES_ROOT\\Msi.Package\\shell\\LoggedInstall] @="&Logged Install" [HKEY_CLASSES_ROOT\\Msi.Packageshell\\LoggedInstall\\command] @="msiexec.exe /l* \"%1-install.log\" /i \"%1\" %*" [HKEY_CLASSES_ROOT\\Msi.Package\\shell\\LoggedUninstall] @="L&ogged Uninstall" [HKEY_CLASSES_ROOT\\Msi.Package\\shell\\LoggedUninstall\\command] @="msiexec.exe /l* \"%1-uninstall.log\" /x \"%1\" %*"
And in case you have not yet configured ‘Run as’ for MSI files, you may want to add these as well:
[HKEY_CLASSES_ROOT\\Msi.Package\\shell\\runas\\command] @="msiexec.exe /l* \"%1.log\" /i \"%1\" %*"
MSI shell context menu (Save as and rename to .reg)


LinkedIn Profile
Xing Profile
Follow me on Twitter (new)
very informative post. this will really help everyone who is trying to log issues on install and uninstall operations.
thanks for sharing such a nice piece of information
Awesomley informative and useful :).
I work with MSI based installations and it is a very handy tip to work with.
Thanks a lot Johannes
Msi.Packageshell\\LoggedInstall should be Msi.Package\\shell\\LoggedInstall.
Also the commands have to be REG_EXPANDSZ, for example, use this:
[HKEY_CLASSES_ROOT\Msi.Package\shell\LoggedInstall\command]
@=hex(2):0,0
Then run regedit to put in the actual strings. If the reg entries are regular REG_SZ, the menu commands appear, but don’t work when you invoke them, at least not on Win2008.