C#调用dll的简单demo(2)--反射

来源:互联网 发布:网络课程数学文化答案 编辑:程序博客网 时间:2024/06/01 08:26

1.新建C#控制台运用程序,工程名为ConsoleApplication2。

2.工程建好后,点击菜单栏的文件按钮,弹出框选择添加->新建项目->类库,项目名为ClassLibrary1

3.在ClassLibrary1的Class1.cs文件中添加静态函数

  public static void Hello()
        {
            Console.WriteLine("Hello Boy!");
        }

4.如图所示:


5.点击菜单栏的生成按钮,下拉框中选择生成ClassLibrary1

6.然后系统在ClassLibrary项目的bin下的debug目录会生成ClassLibrary1.dll和ClassLibrary1.pdb,

7.把这两个文件拷贝进ConsoleApplication2项目的bin下的debug目录下

8.ConsoleApplication2项目下的Program.cs文件using System.Reflection,这个是反射类需要用到的命名空间;还要using System.IO,这个是Directory类要用到的命名空间

9.在Main函数中添加代码

      Assembly ass = Assembly.LoadFile(Directory.GetCurrentDirectory() + "\\" +  "ClassLibrary1.dll");
            Type type = ass.GetType("ClassLibrary1.Class1");
            MethodInfo method1 = type.GetMethod("Hello");

    method1.Invoke(null, null);

            Console.ReadKey();

10.如图所示:



11.按F5运行,结果如图:



以上,最简单的一个反射调用dll的demo已成功的完成了。





0 0
原创粉丝点击