I see a 0x4242420 first-chance exception fly by my Output window in the debugger and I wanted to check if this exception was benign.
The call stack when the exception occurs is as follows:
> kernel32.dll!_RaiseException@16() + 0x52 bytes clr.dll!Debugger::SendRawEvent() + 0x2f9adc bytes clr.dll!Debugger::RaiseStartupNotification() + 0x48 bytes clr.dll!Debugger::Startup() + 0x73 bytes clr.dll!DoAdditionalPEChecks() - 0x439b bytes clr.dll!EEStartupHelper() + 0x4a9 bytes clr.dll!EEStartup() + 0x1c bytes clr.dll!EnsureEEStarted() + 0xa7 bytes clr.dll!_ClrCreateManagedInstance@12() + 0x41 bytes webengine4.dll!LegacyActivationShim::ClrCreateManagedInstance() + 0x55 bytes webengine4.dll!CreateAppDomainFactory() + 0x34 bytes webengine4.dll!GetAppDomain() + 0x16d3 bytes webengine4.dll!GetAppDomainIndirect() + 0x15 bytes aspnet_wp.exe!CAsyncPipeManager::ProcessMessage() + 0x270 bytes aspnet_wp.exe!CAsyncPipeManager::ProcessCompletion() + 0x2b4 bytes webengine4.dll!CorThreadPoolCompletionCallback() + 0x2d bytes clr.dll!ThreadpoolMgr::CompletionPortThreadStart() + 0x18d bytes clr.dll!ThreadpoolMgr::intermediateThreadProc() + 0x48 byteskernel32.dll!_BaseThreadStart@8() + 0x37 bytes
Based on the following snippit I believe this should only be thrown when a debugger is attached.
792A724E FF 15 04 13 14 79 call dword ptr [__imp__IsDebuggerPresent@0 (79141304h)] 792A7254 85 C0 test eax,eax 792A7256 0F 85 41 9A 2F 00 jne Debugger::SendRawEvent+30h (795A0C9Dh)
My guess is that this is some startup exception that is new to .NET 4.0? I just wanted to check that this was safe to ignore since I the internet didn't have the answer yet. :)
- Edited by Jeffrey__ Wednesday, November 21, 2012 2:09 PM
Is it's being handled, I think it's safe to say you can ignore it. :-)
Out of curiosity I did a little digging and found that this is actually an undocumented exception (CLRDBG_NOTIFICATION_EXCEPTION_CODE) that is apparently an addition to the IPC protocol used by the managed debugger in the 4.0 CLR. It should be entirely safe to ignore.