Answered .NET 4.0 : First-chance exception 0x04242420

  • Friday, October 29, 2010 3:39 PM
     
      Has Code

    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. :)

    Thanks,
    Jeffrey


    • Edited by Jeffrey__ Wednesday, November 21, 2012 2:09 PM
    •  

All Replies

  • Tuesday, November 02, 2010 4:29 PM
    Moderator
     
     Answered

    Hi Jeffery,

    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.

    Sincerely,


    Ed Dore