The trouble with developing windows installers is that sometimes they crash leaving the install partially finished. Any attempt to run an install after that results in the dreaded "Another installation is already in progress" message. Now you probably want to run an installer at some point again in the future, but until you clean up the install that crashed, you can’t (I believe that it an install mutex is locked, among other things) .
So the Windows Installer Clean Up Utility is you friend. Trouble is the Windows Installer Clean Up utility comes as a windows install. So when you try to install it you are just going to get "Another installation is already in progress".
Digging a little deeper you may learn that the cleanup utility is just an app called msicuu.exe which is a front end to msizap.exe. You can extract both from the Windows Installer Cab file (msicuu2.exe) with a tool like WinRAR, or it is available with the support tools for the Windows OS you are using (usually on the install CD under support\tools or dowloadable from the web). That gets around the need to run the install.
[It also forms part of the Platform SDK Components for Windows Installer Developers (with a lot of other useful tools for installer work like Orca.exe which allows you to view msi files)].
msizap.exe is not for the feint-hearted. That is why Microsoft usually decently cloth it in msicuu (the Windows Installer Clean Up Utility see above). As always when playing with anything naked, be cautious. So prefer msicuu if you can. When you run msicuu it will present you with a list of failed installs, you can clean up your install if it is there. Otherwise you need to use the product code GUID with msizap
From the ‘notes to self’ department.