未处理的异常

时间:2011-05-27 05:36:29

标签: c++ visual-c++ exception

由于启用了一个控件,我在某些功能上遇到未处理的异常,我无法找到确切的原因。它在汇编指令时给出了错误 00451901添加dword ptr [eax],eax但我无法弄清楚未处理异常的基本原因。请建议一些软件或任何其他事情来了解启用和禁用控件的影响。

1 个答案:

答案 0 :(得分:3)

您得到异常,因为大多数情况下,eax包含的值不是可写内存区域的地址。

所以,问题是为什么这条指令被执行了。这是提示:

说明add dword ptr[eax], eax的机器代码为01 00

也就是说,意外执行此指令通常意味着您碰巧执行了某些数据(例如32位常量'1')。

这通常是因为代码中的缓冲区或堆栈溢出或未正确分配的指针调用函数。

检查数组访问和函数指针调用。