从DLL/程序集获取实例

本文关键字:获取 实例 程序集 DLL | 更新日期: 2023-09-27 18:13:29

我得到了下面生成DLL的代码:

public class MyObject : DependencyObject
{
}

public class Timer : DependencyObject
{
}
public class AnotherClass
{
}
public class Test
{
    public static void Main()
    {
        MyObject q1 = new MyObject();
        MyObject q2 = new MyObject();
        MyObject q3 = new MyObject();
        MyObject q4 = new MyObject();
        Timer t1 = new Timer();
        Timer t2 = new Timer();
        Timer t3 = new Timer();
        AnotherClass a1 = new AnotherClass();
        AnotherClass a2 = new AnotherClass();
        AnotherClass a3 = new AnotherClass();
    }
}

然后我想从我的DLL文件中提取实例。这是我目前得到的:

var library = Assembly.LoadFrom(libraryPath);

但是,我不知道如何提取我的10个实例(4 MyObjects, 3 Timers &3 AnotherClasses)。我唯一能得到的是4个类(MyObject, Timer, AnotherClass和Test)的代码:

IEnumerable<Type> types = library.GetTypes();

但我认为这不是我得到我的10个实例的方式…

(ps:我甚至不确定这10个实例是否包含在我的DLL文件中…)

从DLL/程序集获取实例

你的问题毫无意义。

这些实例只在执行Main()时存在。

如果Main()包含一个依赖于用户输入的循环,你想要得到什么?