COM组件需要显示的释放吗?(50分)

  • 主题发起人 主题发起人 HammerLi
  • 开始时间 开始时间
H

HammerLi

Unregistered / Unconfirmed
GUEST, unregistred user!
在Delphi中,如果我定义了一个过程变量调用COM对象,那么在退出过程时需要显示的释放它吗?还是退出过程后其自动释放?
 
不用显示释放,Com对象是引用记数的。
 
那这种情况呢:COM对象中实现1个方法:方法1,在调用方法1时创建并显示了一个窗口,
显示用的是Show方法,此时,我的调用COM对象的过程就退出了,那么COM对象是现在就释放了呢,还是等待其方法中创建的窗体关闭了以后才释放呢?
 
看COM对象被多少个变量引用了.
所有的引用该COM对象的变量都脱离了生存期或者被置为nil,COM对象
的引用计数就会归零,COM对象就被自动释放了。
 
引用计数我知道,我是想问COM对象的释放会不会受到在其内部创建的资源的影响
 
比如说在COM内部创建了一个窗体,是不是只有这个窗体释放了以后COM对象才会被释放?
 
确实是窗体释放后COM对象才会被释放。但是当调用COM的应用程序退出时,COM会自动的强迫释放窗体。
 
接受答案了.
 
后退
顶部