该文章讲述了dll的基本知识、dll的工程建立和使用dll两种方式实现在应用程序中使用dll的导出函数。
一、DLL的简单介绍
1. DLL定义
DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用,这样的DLL文件被称为共享DLL文件。[引用百度百科]
2. DLL特点
由DLL定义可知,DLL特点有:
1)扩展了应用程序的特性。DLL可以被动态地载入到进程的地址空间中。
2)简化了项目管理,可以让不同的开发团队管理不同的模块。
3)有助于节省内存。一个dll可被多个程序共享。多个程序调用同一个dll内的同一个函数时,系统却只需将该dll加载一次。
4)促进资源共享。
5)促进了本地化。可以使应用程序只包含代码但不包含用户界面组件。
6)有助于解决平台间差异。使用延迟加载机制,程序仅仅加载需要的函数,使程序可以在老版本的系统中运行,可不是在某些函数不被兼容时拒绝运行。
7)可以用于特殊目的。如钩子函数等等。
3. DLL的标准搜索路径
1)可执行文件目录。
2)windows系统目录。
3)windows目录的System目录。
4)windows目录。
5)进程当前目录。
6)PATH环境变量所列出的目录。
4. DLL加载方式
DLL加载方式有隐式链接(需要.dll,.lib,.h)和显式链接(需要.dll)。隐式链接就是在程序开始执行时就将DLL文件加载到内存当中,而显示链接,是实时加载,程序需要的时候加载,不需要的时候,卸载。只要