【发布时间】:2013-09-16 05:36:22
【问题描述】:
我在 C# AppDomain 中遇到了一个大问题。
我需要在 .dll 文件中加载一个静态类并执行它的方法:
-
当我尝试加载它们时
Assembly.LoadFrom("XXXXX") // (XXXXX is the full path of dll).dll 不会自动或以编程方式卸载。
-
当我尝试在 AppDomain 中加载它们时
adapterDomain = AppDomain.CreateDomain("AdapterDomain"); (a)adapterDomain.CreateInstanceFrom(this.AdapterFilePath, this.AdapterFullName); (b)adapterAssembly=adapterDomain.Load(AssemblyName.GetAssemblyName(this.AdapterFilePath));如果我使用方法(a),因为目标类是静态的,所以它不起作用。
如果我使用方法(b),因为目标.dll和我的项目不在同一个目录,我会得到一个异常。
如何加载 .dll 和静态类,然后在使用后卸载 .dll?
【问题讨论】:
-
您无法卸载 DLL。您可以卸载 AppDomain
-
但是我无法将DLL中的静态类添加到AppDomain..
-
看了 Josh 的链接后,我没有找到解决问题的方法,本文介绍的方法都是关于普通类的,但我想加载一个静态类到 AppDomain
标签: c# appdomain static-class