Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Sometimes you may see this scary error in the Windows Event Log:</p> <blockquote> <p>EventType clr20r3, P1 w3wp.exe, P2 6.0.3790.3959, P3 45d6968e, P4 dp.ui, P5 3.9.7.55, P6 4b49a307, P7 62e, P8 0, P9 system.stackoverflowexception, P10 NIL.</p> </blockquote> <p>As you can see it is unclear and has no stack trace, and you don’t have any idea about P1, …, P10 and any numbers. You know which the worst part of that is; the only thing that make you not to sleep and make you wish if it wasn’t in the log, yes! The “dp.ui” message.</p> <h1>Cause</h1> <p>OK, besides of all jokes and wishes, the exception “system.stackoverflowexception” is raised when an infinite loop or method calling happen, so you should check all sources for any recursive method calling and you could fire up Visual Studi to debug that. But it is not possible and feasible all the time even if your application is not enterprise. So you have to google for P1, ..., P10. I did it instead of you, so just sit back and relax!</p> <p><strong>P1</strong>: application name that has occurred this error<br> <strong>P2</strong>: application version<br> <strong>P3</strong>: application time stamp <br/> <strong>P4</strong>: Assembly/Module name<br> <strong>P5</strong>: Assembly/Module version<br> <strong>P6</strong>: Assembly/Module timestamp<br/> <strong>P7</strong>: MethodDef<br> <strong>P8</strong>: IL offset<br> <strong>P9</strong>: exception name (hashed because the name is too long)</p> <h1>Resolution</h1> <p>It’s pretty obvious that we need to find P7, P8. IL Disassembler, a tool included in Visual Studio, will help us to do that.</p> <ol> <li>Execute IL Disassembler, and open your library.</li> <li>Menu: view -> MetaInfo -> Show!, pay much attention to the check list of the menu, especialy Raw check boxes.</li> <li>A dialogue box will appear, search for combination <code>06000</code> with <code>62e</code> and you will see the MethodName of the class and by looking up you will see the first TypeDef which declare the class. And that's all!</li> </ol> <p>As you go to your application you may see a recursive calling and you should check the condition that makes this loop exit!</p> <p>In windows and service application this exception maybe likes the following and you should check “sib.infobase.workflow.services.exe” by “IL Disassembler”:</p> <blockquote> <p>EventType clr20r3, P1 sib.infobase.workflow.services, P2 1.0.2740.20114, P3 468a74f5, P4 sbpscs, P5 1.0.2740.20087, P6 468a74be, P7 1c, P8 120, P9 zxkyzcs5wacordmkttdkr1xouosi00fr, P10 NIL.</p> </blockquote> <p>If you surf in the net you may see a solution like Microsoft has prepared: <a href="http://support.microsoft.com/kb/911816" rel="noreferrer">http://support.microsoft.com/kb/911816</a> , but it may be don’t work properly for this exception.</p> <h1>References</h1> <ol> <li><a href="http://www.netframeworkdev.com/common-language-runtime/clr20r3-from-a-windows-service-calling-a-dot-net-dll-32830.shtml" rel="noreferrer">http://www.netframeworkdev.com/common-language-runtime/clr20r3-from-a-windows-service-calling-a-dot-net-dll-32830.shtml</a><br/></li> <li><a href="http://social.msdn.microsoft.com/Forums/en-US/netfxtoolsdev/thread/ec36eff9-ac9f-46da-afa1-92be489d6a56" rel="noreferrer">http://social.msdn.microsoft.com/Forums/en-US/netfxtoolsdev/thread/ec36eff9-ac9f-46da-afa1-92be489d6a56</a><br/></li> </ol>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload