我在编辑调试程序不久,就发现内存不足,我知道这是程序中有些对象没有被释放?但是又不知道是那些没有释放?
请问一下,如何找出那些没有被释放的对象?vb有没有相应的列表?在堆栈中能找到用类模块\dll创建的对象吗?
释放对象有好的方法吗?谢谢
请问一下,如何找出那些没有被释放的对象?vb有没有相应的列表?在堆栈中能找到用类模块\dll创建的对象吗?
释放对象有好的方法吗?谢谢
If Not a Is Nothing Then
Debug.Print "对象存在"
Else
Debug.Print "对象不存在"
End If释放对象
set a=nothing
set 对象=nothing还是不够的,还必须在使用完毕后,关闭它,如ie对象、word对象等等
msgbox "对象已经释放"
end if
if TypeName(a)="nothing" then
msgbox "对象已经释放"
end if
你是不是用第三方控件了?
不过真的很怪阿,所有AS NEW 对象 都SET =NOTHING 后发现对象仍然存在?
我用的是WIN98
加入类模块 cFrame.cls (里面只是有个b as long )
居然也无法释放对象a,谁能告诉我错在哪里?
form1.frm:Option Explicit
Public A As New cFramePrivate Sub Form_Unload(Cancel As Integer)
Set A = Nothing
If A Is Nothing Then
MsgBox "对象已经释放"
End If
'A 对象仍然存在 Objptr(a)>0??????????
End SubcFrame.cls:private b as long
用了set object=nothing,对象还存在的原因,注意该对象没有被其他的引用
是不是vb出问题了?