自动加载dll,加载dll中程序集的信息。

Posted 静思长远

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动加载dll,加载dll中程序集的信息。相关的知识,希望对你有一定的参考价值。

 自动加载程序集,解析程序集中的方法。

 1  private static object Invoke(string lpFileName, string Namespace, string ClassName, string lpProcName, object[] ObjArray_Parameter)
 2 
 3         {
 4 
 5             try
 6             { // 载入程序集
 7 
 8                 Assembly MyAssembly = Assembly.LoadFrom(lpFileName);
 9 
10                 Type[] type = MyAssembly.GetTypes();
11 
12                 foreach (Type t in type)
13 
14                 {// 查找要调用的命名空间及类
15 
16                     if (t.Namespace == Namespace && t.Name == ClassName)
17 
18                     {// 查找要调用的方法并进行调用
19 
20                         MethodInfo m = t.GetMethod(lpProcName);
21 
22                         if (m != null)
23 
24                         {
25                             object o = Activator.CreateInstance(t);
26 
27                             return m.Invoke(o, ObjArray_Parameter);
28 
29                         }
30                         else Console.WriteLine(" 装载出错 !");
31                     }
32 
33                 }
34 
35             }//try
36 
37             catch (System.NullReferenceException e)
38 
39             {
40 
41                 Console.WriteLine(e.Message);
42 
43             }//catch
44 
45             return (object)0;
46 
47         }// Invoke
View Code

 

以上是关于自动加载dll,加载dll中程序集的信息。的主要内容,如果未能解决你的问题,请参考以下文章

C#利用反射动态调用DLL并返回结果,和获取程序集的信息

C#动态加载dll 时程序集的卸载问题

使用引用项目中已有程序集的 dll

Java Native Interface加载dll文件

C#中如何动态加载和卸载DLL

逆向学习-DLL注入