动态链接库文件是什么

乐多 问答 2022-05-26 04:22:31 阅读(...)

动态链接库文件是一种不可执行的二进制程序文件,它允许程序共享执行特殊任务所必需的代码和其他资源,它们向运行于Windows操作系统下的程序提供代码、数据或函数,程序可根据 DLL 文件中的指令打开、启用、查询、禁用和关闭驱动程序。

动态链接库(Dynamic Link Library 或者 Dynamic-link Library,缩写为 DLL),是微软公司在微软 Windows 操作系统中,实现共享函数库概念的一种方式。这些库函数的扩展名是 ”.dll”、”.ocx”(包含 ActiveX 控制的库)或者 “.drv”(旧式的系统驱动程序)。

Dynamic Link Library 动态链接库

动态链接库文件是什么

动态链接库文件,是一种不可执行的二进制程序文件,它允许程序共享执行特殊任务所必需的代码和其他资源。Windows 提供的 DLL 文件中包含了允许基于 Windows 的程序在 Windows 环境下操作的许多函数和资源。一般被存放在 C:视窗系统 System 目录下。Windows 中,DLL 多数情况下是带有 DLL 扩展名的文件,但也可能是 EXE 或其他扩展名;Linux 系统中常常是.so 的文件。它们向运行于 Windows 操作系统下的程序提供代码、数据或函数。程序可根据 DLL 文件中的指令打开、启用、查询、禁用和关闭驱动程序。

DLL 的全称是 Dynamic Link Library, 中文叫做“动态链接文件”。在 Windows 操作系统中, DLL 对于程序执行是非常重要的, 因为程序在执行的时候, 必须链接到 DLL 文件, 才能够正确地运行。而有些 DLL 文件可以被许多程序共用。因此, 程序设计人员可以利用 DLL 文件, 使程序不至于太过巨大。但是当安装的程序越来越多, DLL 文件也就会越来越多, 如果当你删除程序的时候, 没有用的 DLL 文件没有被删除的话, 久而久之就造成系统的负担了。DLL 文件和 EXE 文件同样可以由编译语言生成,但是 DLL 没有程序启动入口,所以 DLL 文件不可执行。

使用动态连接库的好处

1.多个应用程序共享代码和数据:比如 Office 软件的各个组成部分有相似的外观和功能,这就是通过共享动态连接库实现的。

2.在钩子程序过滤系统消息时必须使用动态连接库。

3.动态连接库以一种自然的方式将一个大的应用程序划分为几个小的模块,有利于小组内部成员的分工与合作。而且,各个模块可以独立升级。如果小组中的一个成员开发了一组实用例程,他就可以把这些例程放在一个动态连接库中,让小组的其他成员使用。

4.为了实现应用程序的国际化,往往需要使用动态连接库。使用动态连接库可以将针对某一国家、语言的信息存放在其中。对于不同的版本,使用不同的动态连接库。在使用 AppWizard 生成应用程序时,我们可以指定资源文件使用的语言,这就是通过提供不同的动态连接库实现的。

5.拓展研发工具的功能,由于 DLL 是和语言无关的,因此能创建一个 DLL,被 C++、VB 或所有支持动态链接库的语言调用。这样如果一种语言存在不足,就能通过访问另一种语言创建的 DLL 来弥补。

VC++、C++ Builder、Delphi 都可以编写 DLL 文件。Visual Basic 5.0 以上版本也可以编写一种特殊的 DLL,即 ActiveX DLL。

收藏 0个人收藏
走进科技生活方式

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • DLL 动态链接库

    计算机中的node.dll是什么

    Node.dll是一种与 Windows 10 操作系统相关的 DLL 文件。DLL英文全称Dynamic Link Library。动态链接库。 计算机中的node.dll是运行库组件,程序可以实现模块化,由相对独立的组件组成。
  • 数据挖掘系统是什么

    数据挖掘系统是什么

    数据挖掘系统(data mining system)是指从存放在数据库、数据仓库或其他信息库中的大量数据中挖掘出有趣知识的系统。近年来为了推动数据挖掘在实际中的应用,许多研究者对数据挖掘系统的体系结构做了大量的研究工作。
  • 分布式异构系统是什么

    分布式异构系统是什么

    分布式异构型计算机系统(Distributed Heterogeneous System)由多个不同种 类的计算平台或应用子系统通过网络连接而成的计 算机系统。计算平台(简称早合)是指计算机的硬件系统和操作系统的组合。
  • Chromium 嵌入式框架 CEF

    CEF是什么

    Chromium Embedded Framework (CEF)是个基于Google Chromium项目的开源Web browser控件,支持Windows,Linux,Mac平台。除了提供C/C++接口外,也有其他语言的移植版。
  • winpcap是什么

    winpcap是什么

    winpcap是windows平台下一个免费,公共的网络访问系统。开发winpcap这个项目的目的在于为win32应用程序提供访问网络底层的能力。它用于windows系统下的直接的网络编程。
  • 360杀毒是什么

    360杀毒是什么

    360杀毒是一款免费的云安全杀毒软件。它创新性地整合了五大领先查杀引擎,包括国际知名的BitDefender病毒查杀引擎、Avira(小红伞)病毒查杀引擎、360云查杀引擎、360主动防御引擎以及360第二代QVM人工智能引擎。