How to decode Windows errors?

[German]In case of error Windows reports a cryptic error code instead of a detailed error description. Within this blog post I will try to give a few hints to decode this Windows error codes.

If Windows reports an error (like code 1605) it's not clear for what this code stands for. In most cases users are searching the web for pages dealing with the error code. Also Stop codes issued in a blue screen or errors shown in device manager are cryptic. Unfortunately there are also many error sources. So let's take a look how to proceed and decode error codes.

Decipher error codes like 1, 2, 1025

If Windows reports a simple error number like 1, 2, 13, 1065, you may ask the operating system for error details. Just open the command prompt windows (typing cmd in search bar and press enter key).

Error

Then enter the command:

net helpmsg <error code>

This will show the error message associated to this code in plain text.

How to decipher device manager error codes

If you opens device manager and double click an entry, the property windows will be show. Device errors will be shown on general tab. To decode such an error code, open this Microsoft device manager error codes website. The site documents all error codes related to Windows device manager.

Decipher system error codes 0 – 15999

All system errors with error codes between 0 (0x0) and 15999 (0x3e7f) are decoded in the Microsoft web site System errors 0 – 15999.

Stop errors in blue screens

If Windows crashes with a blue screen, a stop code will be shown. The stop code gives an hint, what went wrong. Stop codes are documented in Microsoft's Bug Check Code Reference.

Decipher Windows HRESULT errors

Many errors reported from Windows are using a format like 0x80010005. The error code consists of 8 hex digits, with prefix code 0x (stands for hexadecimal number). Such error numbers are returned from Windows HRESULT function. Most users are trying to search the internet to find pages dealing the error code. But in some cases it could be more helpful to have a clue, for what the HRESULT err stands for. Microsoft has published this web site with an explanation, how HRESULT values are decoded.

HRESULT-Err

A HRESULT value reported from Windows in hexadecimal digits are decoded as shown in the figure above. An error code 0x80010005 mean, the facility error code is 1, which stands for a RPC problem (RPC = Remote Procedure Call). And the error code is 08. Here are the meaning of the error bits:

  • S – Severity – indicates success/fail
    • 0 – Success
    • 1 – Failure
  • R – Reserved portion of the facility code, corresponds to NT's second severity bit.
    • 1 – Severe Failure
  • C – Customer. This bit specifies if the value is customer-defined or Microsoft-defined.
    • 0 – Microsoft-defined
    • 1 – Customer-defined
  • N – Reserved portion of the facility code. Used to indicate a mapped NT status value.
  • X – Reserved portion of the facility code. Reserved for internal use. Used to indicate HRESULT values that are not status values, but are instead message ids for display strings.
  • Facility – indicates the system service that is responsible for the error.
    • 1 – RPC
    • 2 – Dispatch (COM dispatch)
    • 3 – Storage (OLE storage)
    • 4 – ITF (COM/OLE Interface management)
    • 7 – Win32 (raw Win32 error codes)
    • 8 – Windows
    • 9 – SSPI
    • 10 – Control
    • 11 – CERT (Client or server certificate)

This HRESULT web site and this document contains a list of many HRESULT errors with its error description. After deciphering a HRESULT error code, it's probably more easy to search for the error using the internet.

Microsoft has posted a Technet article in October 2016, detailing some upgrade errors in Windows 10 (see my blog post Windows 10: Analyze upgrade errors).

Similar blog posts
Windows 10 Wiki
Windows 10 Anniversary Update – FAQ and Tips
Windows 10 Anniversary Update trouble shooting
How to decode Windows errors?
Check and repair Windows system files and component store
Windows 10: Upgrade error 0xC1900101 – 0x20004
Windows 8 Upgrade: Troubleshooting and analysis
Windows 10: Update error 0x80070057
Windows 10: Rollback to Windows 8.1 is 'missing'

This entry was posted in Windows and tagged , , . Bookmark the permalink.

2 Responses to How to decode Windows errors?

  1. Bob Laf says:

    An easier way to lookup error code is to search in The Magic Number Database, an online tool that contains errors but also any Windows related "values". for example: https://www.magnumdb.com/search?q=1065, but you can also refine by file name, for example: https://www.magnumdb.com/search?q=1065+AND+filename%3Awinerror.h will tell you the win32 error is ERROR_DATABASE_DOES_NOT_EXIST

Leave a Reply

Your email address will not be published. Required fields are marked *