jfarber wrote:
We have an MSI that writes to HKLM\Software\Novell\Login\Banner. The problem is that for some unknown reason the packager set HKLM\Software\Novell to "Install if present, uninstall if absent". If performing a major upgrade or uninstall of the package uninstalls the HKLM\Software\Novell and breaks Novell. It's easy enough to fix new installs, but how can I fix the problem on existing installs? It needs to be a totally silent solution. I've try to repair the app and that doesn't work. The only way I've been remotely successful was deleting the cached MSI from C:\Windows\Installer and then repairing, but since that is a randoming generated filename that won't be a permenant solution.
Any ideas?
Thanks
Hello,
I see that you've submitted a support incident, however, indicate that you've already found a solution.
But, I will weigh in with my 2 cents in case it helps anyone else out there.
If the issue is during Uninstallation, one way I've seen to work around this is by transforming the cached *.msi package. Some people have done this by writing code to either run UPDATE or DELETE queries against MSI Tables or apply a transform to the cached MSI package. But, I wouldn't really recommend that type of approach if at all possible.
There are other ways of transforming the cached *.msi that are less sticky--such as a Small Update or a Patch.
The Small Update would basically be a tweak of the existing image, and then run with REINSTALLMODE=vomus. This would update the copy in the windows installer cache without the problematic Registry table entries.
Similarly, you could build an *.msp off of this image, and roll a much smaller *.msp file out to be silently installed. While not the most common approach, I've seen people make it silently work for them in a Major Upgrade when launched from the UI Sequence (but it won't work from the Execute sequence).