how to manually remove MSI installation?

限于喜欢 提交于 2019-11-30 11:37:29

问题


I am learning VS 2008 setup project to create install for our C# application. I made a mistake trying to delete the exe itself during the uninstall. Now I manually deleted the exe file but the entry still in Add Remove Program list. I try to install a fixed newer version but msi doesn't allow me to do so.

How can I remove the old version manually (i can use regedit, no problem)? I am using XP machine. thanks

EDIT: After I removed its subkey in that uninstall registry entry, I still cannot install my newer version.


回答1:


Use msiexec /x {guid product code}. If your MSI database got screwed up and this doesn't work, try msizap.




回答2:


If this is a proper small update / minor upgrade .msi file to fix an earlier version which couldn't uninstall, just install it with msiexec /i updated.msi REINSTALLMODE=vomus (and maybe also REINSTALL=ALL). The v of vomus will have Windows Installer replace the old package with the new, and then you can uninstall normally.

But of course all this is unnecessary these days with the ability to test on a virtual machine you can just revert...




回答3:


Remove your install entry in registry here. You might need to find out the GUID from your setup project.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall OR
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

Check also DisplayName, it can be helpful when your product has defined friendly name.



来源:https://stackoverflow.com/questions/4069431/how-to-manually-remove-msi-installation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!