日期:2014-05-19  浏览次数:20846 次

反射资源的释放~~
主程序
Sub   Main()
...反射...
Dim   Myassembly   As   Assembly   =   Assembly.LoadFrom(DllPath)
CType(Myassembly.CreateInstance( "Message.Base "),   某一类别).Show
End   Sub

外部的Dll文件
Sub   Show()
Dim   AA   as   某窗体
AA.Show
End   Sub

'==============================================
主窗体的Sub   Main结束后,反射出来的窗体,没有随着Sub的结束而结束。

问题一:这样子,我如何去控制它,并结束该窗体呢?如何释放该反射出来的程序所占有的资源呢??(主窗体和外部DLL控制都可以)

问题二:反射出来的DLL窗体,和主框架是多线程的关系么?是不是关闭了所有的窗体它就自动释放了呢?




------解决方案--------------------
不懂帮顶

好象不是反射的也应该是这样的?

sub main结束了但是程序线成还没有结束(可能还在消息循环),所以程序还没有结束

你看看能不能在外部dll里写个close方法,在要关闭的地方调用close方法

具我所知反射出来的类就是你new出来的类一样,只是他是反射出来的
------解决方案--------------------
是AppDomain 类的方法:
AppDomain.Unload 方法