delphi对象在释放时会清除对象相关接口。如果开发人员在这之前已经将接口对应的对象释放掉,那么当清除到该接口时经常会报访问内存错误,如下图
Break断点在_IntfClear 函数内,如下图
该问题解决办法:
1. 首先确定是哪个接口释放时出现的错误,我们可以在_IntfClear加断点,跟踪释放接口信息,基本可以确定是哪个接口引起的错误,如下图
2. 在被释放对象的Destroy里,将该接口置为nil。
2022-11-14 13:04:09
delphi对象在释放时会清除对象相关接口。如果开发人员在这之前已经将接口对应的对象释放掉,那么当清除到该接口时经常会报访问内存错误,如下图
该问题解决办法:
1. 首先确定是哪个接口释放时出现的错误,我们可以在_IntfClear加断点,跟踪释放接口信息,基本可以确定是哪个接口引起的错误,如下图
2. 在被释放对象的Destroy里,将该接口置为nil。