概括
在描述什么是 DLL 时,本文介绍了动态链接方法、DLL 依赖项、DLL 入口点、导出 DLL 函数和 DLL 故障排除工具。
对于 Windows 操作系统,操作系统的大部分功能都是由 DLL 提供的。此外,当您在这些 Windows 操作系统之一上运行程序时,程序的大部分功能可能由 DLL 提供。例如,某些程序可能包含许多不同的模块,而程序的每个模块都包含并分布在 DLL 中。
DLL 的使用有助于促进代码模块化、代码重用、高效内存使用和减少磁盘空间。因此,操作系统和程序加载速度更快,运行速度更快,占用的计算机磁盘空间更少。
当程序使用 DLL 时,称为依赖项的问题可能会导致程序无法运行。当程序使用 DLL 时,会创建一个依赖项。如果另一个程序覆盖并破坏了这种依赖关系,则原始程序可能无法成功运行。
随着 .NET Framework 的引入,大多数依赖问题已通过使用程序集消除。
更多信息
DLL 是一种库,其中包含可供多个程序同时使用的代码和数据。例如,在 Windows 操作系统中,Comdlg32 DLL 执行常见的对话框相关功能。每个程序都可以使用此 DLL 中包含的功能来实现打开对话框。它有助于促进代码重用和有效的内存使用。
通过使用 DLL,可以将程序模块化为单独的组件。例如,会计程序可以按模块出售。如果安装了该模块,则每个模块都可以在运行时加载到主程序中。因为模块是分开的,所以程序的加载时间更快。并且仅在请求该功能时才加载模块。
此外,更新更容易应用于每个模块,而不会影响程序的其他部分。例如,您可能有一个工资计划,税率每年都在变化。当这些更改与 DLL 隔离时,您可以应用更新而无需再次构建或安装整个程序。
以下列表描述了在 Windows 操作系统中作为 DLL 实现的一些文件:
-
ActiveX 控件 (.ocx) 文件
ActiveX 控件的一个示例是日历控件,它允许您从日历中选择日期。
-
控制面板 (.cpl) 文件
.cpl 文件的一个示例是位于控制面板中的项目。每个项目都是一个专门的 DLL。
-
设备驱动程序 (.drv) 文件
设备驱动程序的一个示例是控制打印机打印的打印机驱动程序。
DLL优势
下面的列表描述了程序使用 DLL 时提供的一些优点:
-
使用更少的资源
当多个程序使用相同的函数库时,DLL 可以减少加载到磁盘和物理内存中的代码重复。它不仅可以极大地影响在前台运行的程序的性能,还可以极大地影响在 Windows 操作系统上运行的其他程序的性能。
-
提倡模块化架构
DLL 有助于促进模块化程序的开发。它可以帮助您开发需要多种语言版本的大型程序或需要模块化架构的程序。模块化程序的一个例子是会计程序,它有许多可以在运行时动态加载的模块。
-
简化部署和安装
当 DLL 中的函数需要更新或修复时,DLL 的部署和安装不需要将程序与 DLL 重新链接。此外,如果多个程序使用相同的 DLL,则多个程序都将从更新或修复中受益。当您使用定期更新或修复的第三方 DLL 时,此问题可能会更频繁地发生。