PRB: Exception Code 0xE06D7363 When Calling Win32 SEH APIs

This article was previously published under Q185294
When you call Win32 Structured Exception Handling (SEH) APIs, such asGetExceptionCode() and GetExceptionInformation(), sometimes the systemreports the following exception code:
Sometimes GetLastError() also returnsthis value. This exception code will be used for any error that is raised by the Microsoft Visual C++ compiler through a call to "throw".
All Visual C++ exceptions thrown from code generated by the MicrosoftVisual C++ compiler contain this error code. Because this is a compiler-generated error, the code is not listed in the Win32 API header files. The code is actually a cryptic mnemonic device, with the initial "E" standing for "exception" and the final 3 bytes (0x6D7363) representing the ASCII values of "msc".
To properly handle the error, you need to wrap the offending code in atry...catch block. This allows the developer to identify the actual Visual C++ exception that was thrown.

While debugging an application with Microsoft Visual Studio, you can haltthe program immediately when this exception occurs, before any handler codeis invoked. This gives you a chance to view the offending statement and fixthe exception yourself by modifying the variable contents, thereby avoidingan unwind. To set how the debugger handles this exception, follow thesesteps:
  1. Start debugging your application.
  2. From the Debug menu, click Exceptions.
  3. Within the Exceptions dialog box, select error 0xE06D7363.
  4. Change the value of Action from Stop if not handled to Stop always.
This behavior is by design.
Visual C++ Books Online: Exception Handling; Debugging Exceptions

Article ID: 185294 - Last Review: 03/16/2005 20:37:00 - Revision: 3.2

Microsoft Win32 Application Programming Interface

  • kbapi kbkernbase kbprb kbexcepthandling KB185294