如何手动删除MSI安装?

我正在学习VS 2008安装项目,为我们的C#应用​​程序创build安装。 我犯了一个错误,试图在卸载过程中删除exe本身。 现在我手动删除exe文件,但条目仍然在添加删除程序列表。 我试图安装一个固定的新版本,但msi不允许我这样做。

我怎样才能手动删除旧版本(我可以使用registry,没问题)? 我正在使用XP机器。 谢谢

编辑:我删除它在该卸载registry项中的子项后,我仍然无法安装我的较新版本。

替代文字

Solutions Collecting From Web of "如何手动删除MSI安装?"

使用msiexec /x {guid product code} 。 如果你的MSI数据库搞砸了,这不起作用,请尝试msizap

如果这是一个适当的小更新/次要升级.msi文件来修复无法卸载的早期版本,只需安装它与msiexec /i updated.msi REINSTALLMODE=vomus (也许还REINSTALL=ALL )。 vomus v将Windows安装程序用新的替换旧的包,然后您可以正常卸载。

但是,当然,这些都是不必要的,只要在虚拟机上测试就可以恢复。

在注册表中删除您的安装条目。 您可能需要从安装项目中找到GUID。

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

检查显示名称,当您的产品定义了友好名称时,它会很有帮助。

我遇到了同样的问题,安装Windows服务时缺少原始的.msi-package。 我解决了这些步骤:

  1. 外壳:sc删除“Servicename”
  2. 检查注册表:HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services
  3. 使用“Revo Uninstaller”工具完全删除注册表项以进行安装,并删除Windows中的“程序和功能”

之后,我可以成功使用新版本的.msi-package