程序(用Delphi6编写的)无法正常退出(200分)

  • 主题发起人 主题发起人 blue_boy
  • 开始时间 开始时间
重点检查,close部分的代码,看看,一般是,释放或者引用对象出错;
 
如果按照上面一些朋友的方法去试不行的话,可以试一下单独释放某一个组件。
这种情况大多出现在第三方组件不兼容或者,没有注册所造成的。最后重新编译所有。
 
也可以通过Delphi的错误跟踪,记录“02594AEC” 然后在debug菜单里选择。 Go Address
可以反回错误点的代码。
 
这个错误出现在访问了一个还没有创建一个对象,你必须仔细检查一下自己的代码;
 
访问了还未分配或已经释放的内存地址,好好查查代码的bug
 
多半是由于代码编写不当造成的问题。
 
对象未创建或已释放
 
指针问题,兵家大忌
 
遇到过此类问题,是内存没有释放,
连接数据库问题也会造成这种错误,
 
单步跟踪一下自己就知道答案了
 
资源没释放;
 
单步跟踪

try
finally
end;
还有可能就是对象释放对还调用了
另是98还是2000,2000的内存保护要好点
 
还有如果是数据库的程序,还要看看数据库中的数据
我以前就碰到过,有一条全空的记录,结果程序老出错
 
我尝试了用单步执行的办法,但是无法跟踪到具体某行代码。
而且程序也没有办法捕捉到出错信息。
所以我觉得是程序退出后,操作系统回收内存时出错。
不知道哪位处理过类似的问题?帮帮忙,谢谢!
 
如果你使用到了COM对象,我建议你去跟一下COM对象的引用计数。
 
看看我上面的代码,对象已经被释放,但你还在使用它。
例如我上面的例子中,将self.Free改为close就不会出错。
 
你的delphi6装Update2了吗?
 
程序自生要释放
 
To 花园风味 :
装了Update Pack 2
有影响吗?
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部