I am faced with a strange issue. One of our customers tried uninstalling our product and the uninstallation was always rolling back.
So he went ahead and ran a couple of cleanup steps ,which otherwise the installer would have taken care of during uninstallation.However now the product registration is not cleaned from the windows installer database. So the customer continues to see the
entries for our product in the Add/Remove programs applet.
The customer now wants to reinstall our product and the installer detects that the product is installed and goes into maintenance mode.
He also wants the add/remove entries to be cleaned up.
Here were my suggestions:
1)Use the windows installer cleanup tool - The customer is not ready to use this.
2)Use msizap - Not yet conveyed to the customer. However i am not sure if the customer would agree to this.
3)Provide the customer with a utility which would cleanup the windows installer registration entries.
I am now pursuing the third option.
Here are the steps i am performing in the cleanup utility:
1)Cleanup the registration entries under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<Product GUID>
2) Cleanup the registration entries under HKEY_CLASSES_ROOT\Installer\Products\<GUID>
I observed that cleaning up the registry key as described in step 2 removed the entries in the Add/Remove programs.
1)Is there an API/set of API's which i could use to cleanup the windows installer registration?
How do i locate this registry key? What is this registry key? How is this generated?
Obviously, the Microsoft provided cleanup tools have some mechanism by which they locate this registry key.Does anyone know of the same.
I am dead stuck here. Any help would be very much appreciated.