在EXE文件中如何实现调用另外一个EXE文件中的方法? | 您所在的位置:网站首页 › 文件怎么连接到另一个文件上 › 在EXE文件中如何实现调用另外一个EXE文件中的方法? |
在设计经常会碰到调用可执行程序,这里我们可以采用Assembly.LoadFrom方法来实现。注意这里面“另外一个EXE文件”既可以是EXE文件,也可以是一个DLL文件。 首先我们可以创建一个类库(或者一个控制台程序) using System; using System.Reflection;
namespace AppDomainDLL { public class AssemblyProcessor { public void Process(string name) { Console.WriteLine("hello " + name); } } } 编译成功后,再新建一个工程,并把刚才编译好的文件放入要调用的可执行文件的同一目录下: using System; using System.Reflection;
namespace CallOutput { class Program { static void Main (string[] args) { Assembly assembly = Assembly.LoadFrom("AppDomainDLL.dll"); Type[] types2 = assembly.GetTypes(); foreach (Type t in types2) { Console.WriteLine(t.FullName); } Type myType = assembly.GetType("AppDomainDLL.AssemblyProcessor"); Console.WriteLine(myType.FullName); MethodInfo mymethod = myType.GetMethod("Process"); Object obj = Activator.CreateInstance(myType); object[] name = new object[] { "upc"}; string info=(string)mymethod.Invoke(obj, name); Console.WriteLine(info); Console.ReadLine(); } } } 其中Invoke返回一个调用方法的返回值装箱的Object对象
|
CopyRight 2018-2019 实验室设备网 版权所有 |