Re: Process terminates unexpectedly with exit code access violation 0xC0000005
"Martin T." wrote:
C++ Windows application / release build with all optimizations
disabled / Visual Studio 2005 / Windows XP sp2
I am facing the problem that our application terminates
unexpectedly without any debug/reporting mechanism being
invoked, i.e. it terminates *as if* I would issue the call
::TerminateProcess(hCurrent, 0xC0000005) manually. However, we
are sure that no user code in our application calls
TerminateProcess (let alone with the code for access violation).
What you see is typical to the foloowng scenario:
1. A thread exhausts its stack space; EXCEPTION_STACK_OVERFLOW
exception (0xC00000FD) is risen.
2. A thread swallows EXCEPTION_STACK_OVERFLOW and continue
execution.
3. At the next attempt to grow stack, the system takes control,
issues EXCEPTION_ACCESS_VIOLATION (0xC0000005) exception and
terminates the process immediately - without any GUI message!
Now, this scenario is true to all WinNT line from 4.0 up to XP.
However, I read it somewhere that now Vista and higher shows some
error message to the user. The process is terminated on the spot,
anyway.
HTH
Alex