
Carl Daniel wrote:
If you want to use catch(...) in VC++ code and NOT translate platform exceptions into C++ exceptions, your only real choice is to use __set_se_handler to set a "handler" that terminates the program when a platform exception is raised.
It is even possible to rely on the default handler which invokes the debugger. You simply throw the exception from the se_handler. void se_trans(unsigned int i, _EXCEPTION_POINTERS *p) { throw; } Call #pragma warning(disable:4535) _set_se_translator(se_trans); #pragma warning(default:4535) in main(). The pragma disable the warning that the application has to be compiled with asynchronous exception model. But this is irrelevant if you just rethrow the exception and the default handler terminates the application anyway. Hajo