如何在托管程序中动态加载dll并且调用其中的函数

原创 2007年09月21日 15:20:00
如果是托管的assembly,那么就Assembly.Load然后Reflection.之,从assembly -> type -> method层层推进。

如果是最原始的windows dll,那只能loadlibrarygetprocaddress了。Type-safe Managed wrappers for kernel32!GetProcAddress.注意,这种方法有极大的危险性。

如果是COM dll, 仍然是反射,不过需要用Type.GetTypeFromProgID()得到类型信息,然后用Activator.CreateInstance来创建类型的实例。之后就可以通过对这个实例进行反射来调用其中的方法,属性等等。

API 动态加载非托管

  • 2014年05月06日 22:10
  • 28KB
  • 下载

动态加载DLL实现不同DLL的相同导出函数调用问题

假设这样的情景:         一个exe加载了两个dll(dll1和dll2,并使用隐式加载)。dll和dll2都同时向外导出一个函数:         int add(int a, ...

C#实现从dll程序集中动态加载窗体

http://www.csharpwin.com/csharpspace/10879r957.shtml 昨天晚上花了一晚上时间写了一个从程序集中动态加载窗体的程序.将任何包含窗体的代码编译...
  • plean
  • plean
  • 2012年10月26日 17:03
  • 1196

从 dll 程序集中动态加载窗体

转载:http://www.cnblogs.com/Infinity/archive/2006/10/26/540347.html 感谢原作者。 昨天晚上花了一晚上时间写了一个从程序集中...

C#实现从dll程序集中动态加载窗体

昨天晚上花了一晚上时间写了一个从程序集中动态加载窗体的程序.将任何包含窗体的代码编译成 dll 文件,再把 dll 文件拷贝到本程序的目录下,本程序运行时即可动态检查到 dll 文件中的窗体,将窗体类...

VC++ .NET 动态加载DLL,使用反射方式Invoke委托调用

每次新产品都需要配一个上位机,并且本地配置与远程配置都需要重新开放配置程序,因此就想办法把配置模块变为一个动态的控件,一次开发后续2个程序都可以同时使用,使用了很多种方法,最后还是使用反射方式. ...
  • cp1300
  • cp1300
  • 2015年10月09日 21:50
  • 1084

动态加载调用DLL里的类

转自:http://blog.chinaunix.net/uid-283792-id-2448559.html 动态加载动态连接库能更加有效地使用内存,这在大型项目中是非常有用的一项...

c# 动态加载dll文件,并实现调用其中的方法

以下是测试代码: 新建一个classlibrary,包含两个类class1和class2,这两个类中分别有一个方法,都是返回一个字符串,代码如下: using System; using System...
  • lcawen
  • lcawen
  • 2012年10月16日 09:29
  • 2238

vb.net动态加载dll并执行dll中的某一个函数

注意:下面的Dll文件必须是用托管代码写的,否则请使用API的相应函数进行动态加载。 一、 比如我事先写了一个类,如下: Public Class TestClass     Public Funct...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何在托管程序中动态加载dll并且调用其中的函数
举报原因:
原因补充:

(最多只允许输入30个字)