一、问题背景
原本在系统中安装过VMware16,但因为将系统中的盘符F更换为了D(毕竟跳了两个盘符太丑了),导致相关信息失效了,于是使用geek进行强制卸载(实际上就是删除了安装目录、应用信息目录和安装的注册表)。 然后进行重新安装时出现了安装程序崩溃退出的问题。
二、问题分析
vmware安装时会安装许多设备、驱动等,相关驱动无法直接卸载掉。在vmware安装时会检查这些驱动,所以才会由于卸载不干净导致无法安装。
三、问题解决
1. 使用windows install clean up强制删除vmware
使用geek删除后vmware会识别系统仍然安装了vmware,所有需要使用 windows install clean up 工具进行卸载。由于之前geek已经删除了注册表,所以系统无法识别安装了vmware,这时候需要恢复注册表,然后用 windows install clean up 删除,这时候vmware安装程序就可以正常打开了
2.删除残余的注册表及文件
使用everything和ccleaner删除vmware开头的残余文件和失效的注册表
在命令行中运行vmware安装程序后接参数 /c清理残余内容
3.修复注册表权限
这时可以进入vmware的安装流程,但是会提示无法打开注册表项目,并且会给出打开失败的表项,例如“无法打开注册表项UNKNOWN\Components\…请确认你是否有足够的权限访问该注册表项,或者与技术支持人员联系”。
打开注册表,找到 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components,根据其子项名称(即报错中路径的最后一项,\Components\xxx\子项),可以搜索到很多无法打开的项。这时对表项右键,选择权限,在弹出的窗口中可以看到组或用户名都是空的,点击添加,输入Everyone并添加。添加后点击高级,可以看到所有者也为空,点击更改,添加administrators后点击确定,这时表项就可以正常打开了。对所有的项都进行修复。如果全部修复完成即可进入下面的安装流程
4.清理剩余驱动
这时安装流程会卡在安装虚拟网卡这一步,因为电脑上现有的虚拟网卡没有删除干净。打开网络,可以在网卡中找到VMware Bridge Protocol,点击卸载会报错。这是在命令行打开vmware安装程序后接参数 -r卸载剩余内容,操作完成后会要求重启,重启后可以看到之前残余的网络适配器不见了,卸载 VMware Bridge Protocol 也可以正常操做,这时卸载 VMware Bridge Protocol,然后运行安装程序即可进行正常安装




