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
错误分析:很明显是内存出错,这在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
相关文章推荐
- 运行程序提示access violation at address的解决方法-
- 如何解决“access violation at address”错误
- access violation at address 解决之法【转】
- Access violation at address 问题与解决方法
- 程序报错“Access violation at address 00000000.Read of adress 00000000.”解决方法
- access violation at address 解决之法
- access violation at address 解决之法
- 安装TestDirector8.0报错:Access violation at address 005FB5DB in module ‘setup.exe’ 解决方法
- 运行程序提示access violation at address的解决方法
- 如何解决“access violation at address”错误
- 运行程序提示access violation at address的解决方法【转自互连网】
- 运行软件弹出错误 access violation at address 004096da write of address 00401000 怎么解决
- 运行程序提示access violation at address的解决方法
- 运行程序提示access violation at address的解决方法
- 易助 易飞如何解决“access violation at address”错误
- Access Violation at address 00000000.Read of address 00000000 解决办法
- 弹出错误 access violation at address 004096da write of address 00401000 解决
- Access Violation at address 00000000.Read of address 00000000 解决办法
- C++ Builder调用VC编写的DLL出现'Access violation at address xxx'的解决方法
- XAMPP下WinMySqlAdmin中Access violation at address 10002593 in module 'LIBMYSQL.dll'. Read of address 00000000.的解决方法