卸载或重装软件提示缺少msi的解决方法(软件卸载功能修复)

卸载或重装软件提示缺少msi的解决方法

很多软件只提供.exe安装包,但我们清理硬盘有时会把软件预留的卸载包(.msi)删掉,这时从设置就卸不掉软件,提示缺少msi

一般程序会使用原生的.msi作为安装器,再套一层.exe的壳作为UI。

大部分软件卸载的逻辑和安装流程是相反的,因此开发者们就把安装包复制一份到系统目录,卸载时系统使用不同的选项,以此来实现卸载功能。

但是,大部分安装程序的逻辑是先卸载旧版本,再安装新版本 ,而由于旧程序存放在系统目录中的安装包(.msi)缺失,所以无法卸载,也无法重新安装。

即使你刚下的.exe安装包内就存着那个.msi安装包,但因为先卸载的缘故,安装程序会因为旧版无法卸载而退出。也就卡在死循环里。

这里介绍几种解决的方法(按易用性和完备性排序)

1. 从Temp目录找安装包

很多.exe安装程序会在打开后把.msi安装包释放到%TEMP%目录,我们可以从那里找。

先下载与已安装的软件相同版本的安装包打开 .exe安装程序,不要关闭窗口。

然后按下Win+R,输入%TEMP%打开Temp目录,复制地址栏的地址,黏贴进Everything的搜索框内,在后面打一个空格,加上.msi

Everything下载:https://www.voidtools.com/zh-cn/downloads/

搜索词:

搜索词 复制代码
C:\Users\你的用户名\AppData\Local\Temp .msi

然后点击"修改时间",改成按照最近优先排序(箭头朝下)。

找到后缀为.msi的第一个安装程序,右键选择属性 > 详细信息 ,查看是不是你要安装/卸载的软件。如果是,把他填进缺少msi界面的输入框就搞定了。(填进去报错的可以把.msi安装程序的名字改成界面上说的名字再试)

2. 从安装程序提取安装包(推荐)

挂好环境,下载
Universal Extractor(github.com/Bioruebe/UniExtract2/releases/latest)

打开压缩包,直接运行UniExtract2.exe

从官网下载与已安装的软件相同版本的安装包 ,把下载的.exe安装程序拖拽到 UniExtract2 的窗口中,点击确定

解包过程完成后,打开与安装程序同名的文件夹 ,仔细搜索文件和文件夹。重点关注是否有.msi结尾的安装包

找到.msi安装包后,把他填进缺少msi界面的输入框就搞定了。(填进去报错的可以把.msi安装程序的名字改成界面上说的名字再试)

3. 手动移除软件信息(会留痕)

既然安装程序检测到你已经安装了这个软件,才让你卸载,那么可以把软件的信息抹除,这样安装程序就会认为你没有安装过软件,就进入正常安装的流程了

要卸载软件的也可以按照这个方法,先完整重装一边再卸载
注意:自己手动去删大概率删不干净,用软件自带的安装程序是最好的卸载方式

方式:参考
[微软官方安装卸载修复工具、恶意软件删除工具,了解下!]

使用文中第一个工具程序安装和卸载修复工具,先把软件移除,再从官网下载与已安装的软件相同版本的安装包,在原来安装的位置安装一遍。

之后就可以正常使用设置 (控制面板)里的卸载功能了。


如果本文解决了你的问题,可以给文章点个赞。也可以在评论区交流方法。

相关推荐
钩鸿踏月19 小时前
复盘一个诡异的Bug之FileNotFoundException
c#·bug·.net
币圈小菜鸟1 天前
Windows 环境下搭建移动端自动化测试环境(JDK + SDK + Node.js + Appium)
java·windows·python·测试工具·node.js·appium
M_Reus_111 天前
Groovy集合常用简洁语法
java·开发语言·windows
暴走十八步2 天前
配置windows下apache+PHP环境
windows·php·apache
Pafey2 天前
【Deepseek】Windows MFC/Win32 常用核心 API 汇总
c++·windows·mfc
重启的码农2 天前
Windows虚拟显示器MttVDD源码分析 (8) 驱动日志系统
c++·windows·操作系统
重启的码农2 天前
Windows虚拟显示器MttVDD源码分析 (7) 命名管道IPC通信
c++·windows·操作系统
技术小泽2 天前
操作系统-基础知识面试常见篇
网络·windows·后端·面试
tanxiaomi2 天前
记一次雪花算法 ID 精度丢失的Bug:前端接收到的 Long 被“四舍五入”了?
bug
仰望星空的凡人2 天前
【BUG排查】调试瑞萨RH850F1KMS1时候随机出现进入到unused_isr
bug·瑞萨·renesas