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

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/sibaison/article/details/70527110

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已成功的完成了。





展开阅读全文

没有更多推荐了,返回首页