2011-05-27 296 views
0

由於啓用了某個控件,我得到了未處理的異常,因此無法找到確切的原因。它在彙編指令 00451901處給出錯誤add dword ptr [eax],eax但我可以'弄清楚未處理的異常的基本原因。請建議一些軟件或任何其他事情來了解啓用和禁用控制的影響。未處理的異常

+4

不能幫助你,直到你張貼相關的代碼 – Ankur 2011-05-27 05:38:30

+0

,並在第一次機會異常 的時間後調用堆棧過。 – 2011-05-27 05:39:48

回答

3

你會得到例外,因爲大多數肯定,eax包含的值不是可寫內存區的地址。

所以,問題是爲什麼這條指令被執行。以下是提示:

指令機器碼add dword ptr[eax], eax01 00

也就是說,這個指令的意外執行通常意味着你恰好執行了一些數據(例如32位常量'1')。

這通常是由於代碼中的緩衝區或堆棧溢出或未正確分配的指針調用函數所致。

檢查你的數組訪問和函數指針調用。