registry is not getting removed after un-installation of MSI?
I got an MSI and a REG key. I need to merge the REG key which has license to MSI. I created new component and imported that REG.
I installed MSI and installs fine and update the registry too. But, after uninstallation of MSI that REG is not getting removed. I've checked that component is not shared or permanant.
I tried to delete the registry key manually using Reg Delete (path of Registry) /f. but, it shows the system was unable to find the registry key or value.
How to check it out and any solution?
Thanks in advance.
Answers (6)
only possibility of that component containing the registry not getting removed could be , the component lacks GUID, else some process is holding the registry. Can you give some more details about the error
Comments:
-
It doesn't show any error, After installation I verified to check whether the registry keys are getting removed or not. I found that the registry key remains same even after un-installation of MSI. - vinodreddy10 11 years ago
-
Well, if nothing is working, mark the registry key as "*" and if it still remains, write a script. As simple as that - talonsprem87 11 years ago
-
What will happen if I mark it as "*' and where I need to do that - vinodreddy10 11 years ago
-
I guess, if you open package in Installshield or Wise you will find the option for yourself - talonsprem87 11 years ago
Can you provide more details. Is it an hkcu reg entry? How are you uninstalling the msi, have you tried uninstalling using the msi path instead of product code?
Is msidbComponentAttributesPermanent attribute set for that component? If yes, then it won't be removed during uninstall.
http://msdn.microsoft.com/en-us/library/windows/desktop/aa368007(v=vs.85).aspx
Comments:
-
Hi, It's not marked as permanent and even it's not HKCU registry too. It's HKLM - vinodreddy10 11 years ago
Hmmm...I wonder if taking a log of the uninstallation would help?
Comments:
-
Will check it out and again thanks for your suggestions. Even I intend to learn but I'm the only one here so a bit struggling. I do accept that ITNINJA and the people here gave me some valuable answers by which I've learned a lot. - vinodreddy10 11 years ago
Populate the registry table that look something like this: Customize the values based on your requirement.
| RemoveReg001 | 2 | Software\My Application\Test | - | {NULL} | RemoveRegistry |
RemoveReg001 is the key for this entry in the registry table or the Registry column. 2 defines the Root column which is HKEY_LOCAL_MACHINE. Software\My Application\Test is the registry key which occupies the Key column. The - symbol in the Name column is what tells Windows Installer to remove all the values and subkeys during an uninstall. The Value column is left blank and the last column is the component to which this registry key belongs. In this case, it is a component called RemoveRegistry.
Read more at http://msdn.microsoft.com/en-us/library/windows/desktop/aa371168(v=vs.85).aspx and let us know if any questions.
HKCU registry key?
Comments:
-
No, it's not HKCU registry. It's HKLM/Software/Wow6432node/xxxxx - vinodreddy10 11 years ago
-
terminate your application process first and initiate uninstallation - jagadeish 11 years ago