C#中DLL动态库的使用

介绍

DLL中文名称为:动态链接库英文为DLL*,是Dynamic Link Library*的缩写。是一个包含可由多个程序,同时使用的代码和数据的库。比如包含ActiveX控件(.ocx)、控制面板(.cpl)、设备驱动程序(.drv)甚至自己开发的类。可以在windows系统内看到DLL文件
在这里插入图片描述

DLL依赖项

DLL只是一个独立的文件,不能直接执行,也不能接受消息。需要在程序或者其他DLL调用。不过某个程序在调用DLL时,会创建依赖项,所以该程序不再是独立的,如果该依赖项被破坏,程序就会遇到问题。比如DLL升级、DLL版本覆盖、DLL删除,会造成DLL冲突,如果没有强制实现向后兼容性,则该程序可能无法成功运行

注意事项

DLL 只有在应用程序需要时才被系统加载到进程的虚拟空间中,成为调用进程的一部分,此时该 DLL 也只能被该进程的线程访问,它的句柄可以被调用进程所使用,而调用进程的句柄也可以被该 DLL 所使用。

在内存中,一个 DLL 只有一个实例,且它的编制与具体的编程语言和编译器都没有关系,所以可以通过 DLL 来实现混合语言编程。 DLL 函数中的代码所创建的任何对象(包括变量)都归调用它的线程或进程所有。

DLL创建及调用

创建名称为DLLTest的DLL,在DLLTest创建类,并定义方法,然后在主程序中调用。

1.新建控制台项目DLLMain
在这里插入图片描述

2.创建类库DLLTest

在这里插入图片描述

2.定义方法。定义方法Hello
在这里插入图片描述

3.生成DLLTest动态库。点击生成—生成DLLTest
在这里插入图片描述
4.在控制台项目DLLTestMain引用DLLTest动态库。
在这里插入图片描述

在这里插入图片描述

5.在控制台项目DLLTestMain调用DLLTest动态库方法。

在这里插入图片描述
在这里插入图片描述

程序Demo

CSDN

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yue008

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值