时间:2021-05-20
使用反射(Reflect)获取dll文件中的类型并调用方法,具体内容如下
需引用:System.Reflection;
1. 使用反射(Reflect)获取dll文件中的类型并调用方法(入门案例)
static void Main(string[] args) { //dll文件路径 string path = @"D:\VS2015Project\001\Computer\bin\Debug\computer.dll"; //加载dll文件 Assembly asm = Assembly.LoadFile(path); //获取类 Type type = asm.GetType("Computer.Computer"); //创建该类型的实例 object obj = Activator.CreateInstance(type); //获取该类的方法 MethodInfo mf = type.GetMethod("ShowDrives"); //调用方法 mf.Invoke(obj, null); Console.ReadKey(); }2. 生成类库(computer.dll)的computer.cs文件代码
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;namespace Computer{ public class Computer { private DriveInfo[] drives; public Computer() { this.drives = DriveInfo.GetDrives(); } public void ShowDrives() { Console.WriteLine("该电脑的磁盘驱动器有:\r\n"); foreach (var item in drives) { Console.WriteLine(item); } } }}3. 反射调用结果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
dll文件获取及引用:方法1:通过官网下载dll文件包,并解压。解压文件后,将bin文件夹下的Spire.Xls.dll文件引用到C#程序。方法2:通过Nuge
dll文件获取及引用:方法1:通过官网下载dll文件包,并解压。解压文件后,将bin文件夹下的Spire.Xls.dll文件引用到C#程序。方法2:通过Nuge
C#编程中,调用封装dll中的函数是高频使用的。那么,如何在程序中加载dll并调用其中的函数呢?更进一步的,如何在主程序中对自己封装的dll中的函数进行调试呢?
本文实例展示了C++与C#互调dll的实现步骤,在进行大型项目共享dll动态链接库中可以用到。具体方法如下:一、C#调用C++dll步骤(只能导出方法):1.c
c#中通过反射可以方便的动态加载dll程序集,但是如果你需要对dll进行更新,却发现.net类库没有提供卸载dll程序集的方法。在.net中,加入了应用程序域的