从内存中卸载DLL

时间:2012-10-23 18:10:07

标签: c# .net memory dll

如何从属于另一个进程的内存中卸载DLL,或者进程已经结束但DLL仍然加载到内存中?

我知道如何找到一个现有的进程,甚至列出所有加载的DLL,但我似乎无法得到的是如何找到加载的DLL并从内存中卸载它们。

我读过的所有内容都与AppDomains有关,但我不确定这种情况是否适用于该方法,因为我想要关闭我的应用程序未调用的DLL。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:1)

我认为你不能卸载单个组件。但是您可以卸载包含程序集的AppDomain。

答案 1 :(得分:0)

除非退出Process,否则无法卸载以域中立方式加载的共享DLL。特定于域的DLL与Domain一起卸载。但是,即使DLL已加载仅用于反射,也无法卸载单个DLL。