您的位置:首页 > 其它

Access violation at address 解决之法

2014-06-17 10:54 423 查看
最近发现自己写的程序在别的电脑上(Win2k3)不好使,后来才发现老问题:

错误分析:很明显是内存出错,这在Delphi的开发中普遍存在。

错误原因:这种内存访问错误,往往是访问了已经Free掉的对象,或是访问还没有生成的对象。如果这个地址为0000000, 则一般为访问还没有创建的对象。如果这个地址不为0,而是一个具体地址,那可能是要访问的对象已经Free掉。或是要访问的对象是局部变量,但还没有创建。

特殊案例:delphi调用C#webservice时我初始化过了,build也能过去,只是直接点击exe报错,说明不是上面的原因造成的。

解决方法:右击“我的电脑”。单击“属性”。

在“系统属性”中单击“高级”。

在“性能”中单击“设置”。

在“性能选项”中单击“数据执行保护”。

单击“添加”。选择要运行的程序。

OK。

PS:俺遇到的这个错误貌似是因为操作系统的数据执行保护(dep)导致的,可是微软03server操作系统以上版本都有dep啊,郁闷,得换方法!



原文:http://blog.csdn.net/jrq/archive/2006/06/14/797566.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: