Cannot uninstall Hyper-V

Just open powershell - run as admin and paste these commands there.

— Stop anything that could keep the hypervisor up

taskkill /f /im “Docker Desktop.exe” 2>$null
wsl --shutdown 2>$null

— Disable Windows features that enable Hyper-V or use it

DISM /Online /Disable-Feature /FeatureName:Microsoft-Hyper-V-All /NoRestart
DISM /Online /Disable-Feature /FeatureName:HypervisorPlatform /NoRestart
DISM /Online /Disable-Feature /FeatureName:VirtualMachinePlatform /NoRestart
DISM /Online /Disable-Feature /FeatureName:Microsoft-Windows-Subsystem-Linux /NoRestart
DISM /Online /Disable-Feature /FeatureName:Containers /NoRestart
DISM /Online /Disable-Feature /FeatureName:Containers-DisposableClientVM /NoRestart
DISM /Online /Disable-Feature /FeatureName:Windows-Defender-ApplicationGuard /NoRestart
DISM /Online /Disable-Feature /FeatureName:WindowsSandbox /NoRestart
DISM /Online /Disable-Feature /FeatureName:Windows-Subsystem-For-Android /NoRestart 2>$null # if present

— Prevent the hypervisor and VBS from starting at boot

bcdedit /set hypervisorlaunchtype off
bcdedit /set vsmlaunchtype off

— Turn off Device Guard / Credential Guard / HVCI (Core Isolation)

reg add “HKLM\System\CurrentControlSet\Control\DeviceGuard” /v EnableVirtualizationBasedSecurity /t REG_DWORD /d 0 /f
reg add “HKLM\System\CurrentControlSet\Control\DeviceGuard” /v RequirePlatformSecurityFeatures /t REG_DWORD /d 0 /f
reg add “HKLM\System\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity” /v Enabled /t REG_DWORD /d 0 /f
reg add “HKLM\System\CurrentControlSet\Control\Lsa” /v LsaCfgFlags /t REG_DWORD /d 0 /f

— Disable services commonly used by Hyper-V/WSL/Docker

sc stop vmcompute 2>$null; sc config vmcompute start= disabled
sc stop hns 2>$null; sc config hns start= disabled
sc stop LxssManager 2>$null; sc config LxssManager start= disabled

— Reboot now

shutdown /r /t 0

After reboot you can check if everything is gone with this commands pasted at CMD :

systeminfo | findstr /i hypervisor
bcdedit /enum {current} | findstr /i “hypervisorlaunchtype vsmlaunchtype”

You are wellcome