今天在使用虚拟机的时候出现了这个错误:Windows 10主机上的VMware Workstation出现“VMware Workstation and Device/Credential Guard不兼容”错误。
一、出现的原因
出现这个错误的原因:
一、是因为Device或Credentials Guard不兼容;
二、是因为Windows的Hyper-v与VMware不兼容的问题。
想要解决出现的这个错误,我们需要去逐个排查问题。(我一开始就想到了我昨天安装Android Studio的时候修改了相关的Hyper-v的内容)
二、解决办法
一:关闭Device/Credentials Guard
1、win+R打开Windows系统的运行窗口,输入gpedit.msc,进入本地组策略编辑器。(在这个步骤里面,win10的家庭版是没有本地组策略编辑器的,这需要我们自行安装本地组策略编辑器或者将我们的win10升级到专业版。后面的步骤是对于家庭版安装本地组策略编辑器,但是安装完之后找不到我们需要用的Device Guard这个模块,说这么多主要是帮助家庭版的电脑安装本地组策略编辑器而已。)
下面操作步骤是对于win10专业版来说的,家庭版的在后面
1)输入gpedit.msc
2)输入gpedit.msc,进入本地组策略编辑器如图所示
3)本地计算机策略——>计算机配置——>管理模板——>系统——>Device Guard——>打开基于虚拟化的安全设置为【已禁用】
4)win+R输入cmd打开命令提示符,输入 bcdedit /set hypervisorlaunchtype off再回车之后重启电脑即可
2、这个步骤是如何给我我们的win10家庭版安装本地组策略编辑器,前面已经说过了就算安装了本地组策略编辑器但是也找不到我们需要的Device Guard这个模块,因为win10 家庭版上没有这个组件!!!所以我下面这个步骤就是帮助家庭版的win10去安装本地组策略编辑器而已,并不是针对于这个错误
1)新建一个记事本输入以下代码:
下面展示一些 内联代码片
。
@echo off
pushd “%~dp0”
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >List.txt
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientTools-Package~3*.mum >>List.txt
for /f %%i in (‘findstr /i . List.txt 2^>nul’) do dism /online /norestart /add-package:“C:\Windows\servicing\Packages%%i”
pause
如图所示:
2)然后将文件的后缀名改为bat
3)右键单击,以管理员身份运行
4)安装好之后重启我们的电脑,然后再win+R,输入gpedit.msc即可进入本地组策略编辑器了
二:关闭Hyper-v(假如我们关闭Device Guard之后问题还是没有解决或者我们使用的是家庭版的win10的话,接下来的第二个方法便是关闭Hyper-v。)
1)打开控制面板——>程序——>程序和功能——>启用或关闭Windows功能——>关闭Hyper-v
2)重启我们的电脑,然后进入虚拟机就好了
3)假如问题还是没有解决的话,我们需要彻底的关闭Hyper-v,按下win+x进入Windows PowerShell(管理员)
运行成功之后会显示:操作成功完成
然后我们重启我们的电脑就可以解决这个问题了
三:通过修改注册表的默认数值进行功能的禁用(这种情况是针对于上面两种方法排查之后还是不行的电脑)原因分析:Windows10家庭版本就没有Device Guard这个模组设计,但是系统会默认跑着这个功能,所以引发了VMware冲突,所以我们可以将对应的注册表值设置为0就可以禁用该模组了
1)win+r输入regedit
2)进入注册表之后找到HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\DeviceGuard
3)将这两项的值修改为0可以了
4)重启电脑查看系统信息是否基于虚拟化安全性是未启用状态,然后再进入虚拟机就ok了