Solved

How to catch native WIN NT exceptions?

Posted on 2002-06-28
7
288 Views
Last Modified: 2008-02-01
I would like to catch a specific WIN NT exception within the code. How can it be done? I don't want to use the (...) notation, because I want all other exceptions to continue propogating on all levels. The specific exception number is 0xE06D7363. (I'm almost sure it's a WIN NT specific exception). Thanks!
0
Comment
Question by:orend
7 Comments
 
LVL 23

Expert Comment

by:Roshan Davis
ID: 7115795
Have you tried __try, __except /__try , __finally

Roshmon
0
 

Author Comment

by:orend
ID: 7115804
There's an unwritten law we shouldn't use code dealing specifically with NT... is there another way to catch it?
0
 

Author Comment

by:orend
ID: 7115809
There's an unwritten law we shouldn't use code dealing specifically with NT... is there another way to catch it?
0
Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

 

Author Comment

by:orend
ID: 7115839
There's an unwritten law we shouldn't use code dealing specifically with NT... is there another way to catch it?
0
 

Author Comment

by:orend
ID: 7115865
Err... sorry for the multiple postings.
0
 
LVL 32

Expert Comment

by:jhance
ID: 7116057
Hmmm, I think your "unwritten law" is questionable in the context of this problem.

You want to catch a "specific Windows NT" exception but you don't want to use "code dealing specifically with NT" to do it.  Sounds like a "Catch-22".

The way to get at any and all exceptions (other than DEVICE DRIVER / BSOD faults) is via the SetUnhandledExceptionFilter WIN32 API.  Here you have complete access to anything that happens before Windows displays a problem or starts a debugger.

Unfortunately for you, this is Windows specific.  I know of no way in C++ to catch all Windows NT exceptions.
0
 
LVL 86

Accepted Solution

by:
jkr earned 200 total points
ID: 7116257
>>The specific exception number is 0xE06D7363.
>>(I'm almost sure it's a WIN NT specific exception).

This is a "Microsoft C++ exception" - see http://support.microsoft.com/default.aspx?scid=kb;EN-US;q185294 ("PRB: Exception Code 0xE06D7363 When Calling Win32 SEH APIs (Q185294)") and http://msdn.microsoft.com/code/default.asp?url=/msdn-files/026/002/136/BugslayerUtil/Source%20Files/CrashHandler_cpp.asp on how to catch tha. It seems that you will have to break an 'unwritten law' that is IMHO stupid - if you have to deal with platform specific exceptions, use platform specific code.
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: SunnyDark
This article's goal is to present you with an easy to use XML wrapper for C++ and also present some interesting techniques that you might use with MS C++. The reason I built this class is to ease the pain of using XML files with C++, since there is…
Written by John Humphreys C++ Threading and the POSIX Library This article will cover the basic information that you need to know in order to make use of the POSIX threading library available for C and C++ on UNIX and most Linux systems.   [s…
The goal of the tutorial is to teach the user how to use functions in C++. The video will cover how to define functions, how to call functions and how to create functions prototypes. Microsoft Visual C++ 2010 Express will be used as a text editor an…
The viewer will be introduced to the member functions push_back and pop_back of the vector class. The video will teach the difference between the two as well as how to use each one along with its functionality.

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question