在写.NET程序的時候,.NET并不会自动作资源回收,所以调用完组件后,需要自己写语句来回收资源。
如果调用的是.NET所写的COM+组件,那么资源回收的語法是
Obj.Dispose()
Obj = Nothing
但是如果调用的是VB6的组件,那么不能用Dispose将资源释放,需要用以下的命令将资源释放(组件服务中的数字会停下来)
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)
完整的语句如下:
Dim obj as Object = CreateObject(“PDemo.CDemo”)
Try
Catch ex As Exception
Finally
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)
obj = Nothing
End Try
Try
Catch ex As Exception
Finally
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)
obj = Nothing
End Try