Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Repacked MSI will not uninstall


5 replies to this topic

rduske

rduske
  • Members
  • 5 posts

Posted 26 July 2006 - 19:57

I recently repacked a piece of software and successfully deployed it. Now I have a new version to deploy. It occurred to me that I never tested the uninstall feature (my bad, I know). Well, some idiot, who shall remain me, included WindowsUpdate.log as a keyfile in the installation. Now, the product will not uninstall, since it cannot get an exclusive lock on that file. I have fixed the ism (and tested it!) for new installs, but I have several running machines to fix, so I can install the new version. I cannot rebuild these from scratch, so I must find some way to uninstall the package.

I tried creating a transform based on a diff between the old and the new msi's, but the transform does not seem to take when I install it after the MSI is laid down. I have tried creating a QuickPatch, but the QuickPatch wizard tells me that the source MSI is corrupt and cannot be decompressed. I find this hard to believe because the MSI has been successfully deployed.

Any assistance / suggestions are appreciated.

-- Rick Duske
Frederick.J.Duske@lmco.com


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 26 July 2006 - 21:08

You could simply install the new version on top of the old version.
Another potential workaround would be to add a SharedDLL refcount in registry for that file. With this Windows Installer should not try to delete the file.
Also I wonder why this error is fatal. Don't you get an "Ignore" button?

rduske

rduske
  • Members
  • 5 posts

Posted 26 July 2006 - 22:08

I'm not sure why, but I tried to install the new version on top of the old one. There was an error in the log that said the old version must be uninstalled before installing the new version.

It might have something to do with the fact that we are running silent installs. There is not UI. That being said, I tried to remove the package manually, I got a dialog that said "Error 1306: Another application has exclusive access to the file C:\WINDOWS\WindowsUpdate.log. Please shut down all other applications, then click RETRY." with a RETRY and a CANCEL button. Repeated clicking of RETRY didn't do anything. CANCEL stopped the uninstall.

rduske

rduske
  • Members
  • 5 posts

Posted 26 July 2006 - 22:18

BTW: I tried setting the ShareDLL refcount in the registry. It is still trying to gain exclusive access to the file. Is there some way to force the uninstall to continue and ignore the error ?

Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 26 July 2006 - 22:26

This may be a windows protected file or at least have some other special protection even if it is just a log file. I would suggest you patch the existing install with a minor update that removes this component. This could also be implemented as a major upgrade if you ensure that you schedule RemoveExistingProducts late in the InstallExecute sequence.
Regards
-Stein Åsmul

rduske

rduske
  • Members
  • 5 posts

Posted 27 July 2006 - 13:31

Mystery solved. WindowsUpdate.log was locked by the Windows Automatic Update service. Stopping this service prior to uninstallation fixes the issue. Thank you to everyone that tried to help me.