19 March, 2012

What does this error code mean? (introducing Error Lookup Tool)

Did you ever encounter cryptic error messages like "Error -1073741819" or "Run-time error 216"? Have you wondered what this could be and how to find more meaningfull description of the error? Well, look no further...

Error Lookup Tool

EurekaLog 7 as well as standalone EurekaLog Tools Pack have a Error Lookup Tool, which can help you to analyze different error codes and provide more information than contains in the code itself. You can launch this tool via Start menu (Programs\EurekaLog 7\Tools\Error Lookup) or via Tools\EurekaLog\Error Lookup IDE command (for EurekaLog 7 only, not applicable to Tools Pack).

Error Lookup main window
As you can see - the interface is very simple. Just enter your mystic error code value into edit (don't forget to add '$' prefix for hex-codes) and hit "Lookup..." button:

Error Lookup resolving -1073741819 error code (click on image to enlarge)
Error Lookup resolving 216 error code (click to enlarge)
So now you know that -1073741819 - is actually a system error code for access violation exception, and 216 is the same access violation, but now expressed via Delphi RTL run-time codes.

Error Lookup supports many sources of error codes, for example:

Illustrating more error sources (click to enlarge)
As you can see for some error codes there are multiply possible descriptions available. The correct interpretation depens on the code which generated that error code. Error Lookup can not know that, so it just displays all possible cases - and you'll need to pick the one matching the context of the error.

The opposite case can also be true. You can get an error code, which is unrecognized by Error Lookup Tool. This can either be a custom error code or new standard error code. For example:

Custom error code of HRESULT kind is displayed in Error Lookup
The correct interpretation of custom error codes depends on the component which returns that code. The same code means different things for different components. When you encounter such code you should refer/search documentation for the called code. Custom codes are applicable for Win32, NTSTATUS and HRESULT values. RTL, I/O, WinInet and other kinds of codes do not support custom codes extensions.

Another case of unknown error code:

Unknown error code do not display any additional information
If there is a new error code which is not known to Error Lookup Tool - it will show you no information at all. In this case we ask you to send us a notification about error code which is not covered by us, so we can improve our tools.

You can also try to force-display all interpretation of any error code by marking "Show all" option before clicking on "Lookup..." button:

Showing all possible interpretations of error code
This will display all interpretations of entered error code to you - regardless of if it's meaningfull at all.

You can download freeware EurekaLog Tools Pack here.