Gday all!

I have inherited a MSI that wasn't set up very well. They ahd a custom action to add rights to the registry but didn't set a condition on it running only on install. So the MSI installs just fine but when it goes to uninstall it gets an error as it tries to set rights to this key which doesn't exist anymore.

Any suggestions as to how I would get this MSI to uninstall? It runs an exe off the C drive, one thought i had was just to replace that exe with some meaningless .exe that would return a good error code so the uninstall wouldn't think anything was wrong. Any other ideas?


0 Comments   [ - ] Hide Comments


Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
Answer this question or Comment on this question for clarity


Well it sounds nasty and I think the only way out of this is to create a package with a custom action that strips out the original msi on install.

Basically you capture the msi install on a clean machine and then with that capture set all of the files and registry keys to REMOVE on install and dont install any files/reg keys.

Then go to HKLM\Software\Microsoft\Windows\Current Version\Installer and find the Product code for the original msi and delete it. You also have to do that to the Uninstall section as well.

There will be some other keys to remove but the capture will tell you more about them.

Now you install your "rogue msi killer" package and it removes the msi and then you can uninstall the new package straight away and its all gone.
Answered 03/15/2005 by: MSIMaker
Second Degree Black Belt

Please log in to comment