我得到一個真正令人沮喪的Silverlight插件崩潰,影響IE和Firefox。Silverlight 5 - 調試npctrl.dll崩潰
從事件日誌中的錯誤是:
Faulting application name: iexplore.exe, version: 9.0.8112.16421, time stamp: 0x4d76255d
Faulting module name: npctrl.dll, version: 5.0.61118.0, time stamp: 0x4ec5fc64
Exception code: 0xc0000094
Fault offset: 0x0001d720
Faulting process id: 0x434
Faulting application start time: 0x01ccf0b878b55ca7
Faulting application path: C:\Program Files (x86)\Internet Explorer\iexplore.exe
Faulting module path: c:\Program Files (x86)\Microsoft Silverlight\5.0.61118.0\npctrl.dll
Report Id: bd79af3d-5cab-11e1-8948-000c29de3e25
我就得到了作爲異常時附加的WinDbg得到一點點的更多信息:
(17e4.13f8): Break instruction exception - code 80000003 (first chance)
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\SYSTEM32\ntdll.dll -
ntdll!DbgBreakPoint:
00000000`77810530 cc int 3
0:029> g
(17e4.1790): Integer divide-by-zero - code c0000094 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
*** ERROR: Symbol file could not be found. Defaulted to export symbols for NPCTRL.dll -
NPCTRL+0x1d720:
7b59d720 f7f1 div eax,ecx
好了,NTDLL .dll除以零。我真的不知道如何進一步調試。我試着查看一些解釋如何的文章 - 但我認爲我是有限的基於ntdll.dll沒有可用符號的事實?
如何縮小我的部分代碼導致此錯誤的因素?
我們可以看到發生崩潰的代碼嗎? – 2012-02-21 18:15:19
不幸的是,我不確定是什麼原因造成的。這有些隨意 - 這意味着它可能是我的服務調用(代理類利用ChannelFactory)的結果,或者它可能與我的佈局/過渡動畫有關。換句話說,你所問的正是我想要找到的:) –
2012-02-21 18:20:04
如果你得到一個除零錯誤,你將不得不張貼代碼,在代碼中存在你傳遞一個無效值的地方,或試圖轉換或做一些無效值計算因爲DivideByZero錯誤例如1/0將給出該錯誤。 – MethodMan 2012-02-21 19:02:38