Description
VM_E_HYPERVISOR_NOT_PRESENT (hex code 0x80370003, decimal -2144927741) is a Windows error-level error code in the Hyper-V Errors family. Microsoft surfaces this code through the Win32 API, the Common Language Runtime, the kernel, the event log, PowerShell, command-line tools (sfc, dism, gpupdate, sc), and Windows-side applications such as Outlook, Teams, Office, and System Center.
The hypervisor is not running. Check that virtualization is enabled in BIOS/UEFI.
This page documents what triggers 0x80370003, the most common scenarios where it appears, the likely root causes, and a step-by-step troubleshooting workflow you can run against affected endpoints. It is intended for system administrators, MSP technicians, helpdesk engineers, and anyone diagnosing Windows behavior in a managed environment.
In-depth explanation
This is an error-severity code. Windows uses it to signal a failed operation that prevented the caller from completing its work. The underlying cause can range from a permissions or quota issue to a corrupted system component, missing dependency, or unreachable service.
It is part of the Hyper-V error space. It surfaces in Hyper-V Manager, Get-VM / Start-VM output, and the Hyper-V-Worker / Hyper-V-VMMS event log.
The code can be looked up programmatically in PowerShell with [ComponentModel.Win32Exception]::new(-2144927741).Message (for Win32 / NTSTATUS codes that map cleanly), or with net helpmsg <decimal> for the legacy decimal range. For HRESULT-style codes, decode the facility and code with err.exe from the SDK or via the WinDbg !error command.
Common causes
- Hypervisor not enabled in BIOS/UEFI (Intel VT-x or AMD-V missing).
- Hyper-V role removed or partially uninstalled.
- Insufficient memory or CPU resources to start the VM.
- VHD/VHDX file locked, on a non-NTFS volume, or path access denied.
- Differencing or checkpoint chain broken — reconnect the parent VHD.
Troubleshooting steps
- Confirm hardware virtualization is enabled in BIOS/UEFI (
Get-ComputerInfo>HyperVRequirementVirtualizationFirmwareEnabled). - Verify the Hyper-V role is fully installed:
Get-WindowsFeature *Hyper-V*on Server, orGet-WindowsOptionalFeatureon client editions. - Check VM configuration with
Get-VMandGet-VMHardDiskDrive— VHD path must exist and be accessible. - Inspect the Hyper-V-Worker and Hyper-V-VMMS event logs around the failure timestamp.
- If the VM refuses to start due to memory, lower the startup RAM or enable Dynamic Memory.
Decode in PowerShell
# Decode 0x80370003 (-2144927741) in PowerShell
[ComponentModel.Win32Exception]::new(-2144927741).Message
# Or via WinDbg / err.exe (Windows SDK)
# err 0x80370003
# Or net helpmsg (legacy decimal range only)
# net helpmsg <decimal>Frequently asked questions
What does the Windows error code 0x80370003 mean?
VM_E_HYPERVISOR_NOT_PRESENT (decimal -2144927741). The hypervisor is not running. Check that virtualization is enabled in BIOS/UEFI.How do I decode 0x80370003 in PowerShell?
[ComponentModel.Win32Exception]::new(-2144927741).Message in any PowerShell session. For HRESULT-style codes, use err.exe from the Windows SDK or the WinDbg !error command.Where does Windows typically log this error?
%WinDir%\WindowsUpdate.log; AD/Kerberos → Security event log on the DC; BSOD → minidump under C:\Windows\Minidump; MSI → %TEMP%\msi*.log; WMI → Microsoft-Windows-WMI-Activity). Always cross-reference the timestamp and module name with the Application and System event logs.Is this code recoverable?
Should I open a Microsoft support case for this?
Get-WinEvent export ready before opening the case.
