C#动态调用C++的Dll

本文详细介绍了如何在C#中通过LoadLibrary、GetProcAddress和FreeLibrary API函数动态调用C++编译的DLL。首先,定义一个类以静态方式调用kernel32.dll中的API。接着,通过非托管函数名转换为委托类型,并在C#中声明相应的委托。然后,加载DLL,转换函数地址并实例化委托以调用C++函数。最后,释放DLL模块。
摘要由CSDN通过智能技术生成

C#动态调用C++Dll函数

1.       动态调用dll需要使用LoadLibrary, GetProcAddress, FreeLibrary 3个系统的API函数,所以C#中用一个类静态调用kernal32.dl. 如下:

class  DllTest

{

        // 调用API库函数

        [DllImport("Kernel32")]

        public static extern int LoadLibrary(String funcname);

 

        [DllImport("Kernel32")]

        public static extern int GetProcAddress(int handle,String funcname);

 

        [DllImport("Kernel32")]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值