为了账号安全,请及时绑定邮箱和手机立即绑定

在C#中运行时加载DLL

在C#中运行时加载DLL

C#
芜湖不芜 2019-08-01 16:22:31
在C#中运行时加载DLL我试图找出如何在C#应用程序中运行时导入和使用.dll。使用Assembly.LoadFile()我设法让我的程序加载dll(这部分肯定是有效的,因为我能够获得带有ToString()的类的名称),但是我无法使用'输出'我的控制台应用程序内的方法。我正在编译.dll然后将其移动到我的控制台项目中。CreateInstance之间是否有额外的步骤,然后能够使用这些方法?这是我的DLL中的类:namespace DLL{     using System;     public class Class1     {         public void Output(string s)         {             Console.WriteLine(s);         }     }}这是我想要加载DLL的应用程序namespace ConsoleApplication1{     using System;     using System.Reflection;     class Program     {         static void Main(string[] args)         {             var DLL = Assembly.LoadFile(@"C:\visual studio 2012\Projects\ConsoleApplication1\ConsoleApplication1\DLL.dll");             foreach(Type type in DLL.GetExportedTypes())             {                 var c = Activator.CreateInstance(type);                 c.Output(@"Hello");             }             Console.ReadLine();         }     }}
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 1087 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信