windows - 什么是 DLL 文件,它们是如何工作的?

分类: 365bet体育盘口 时间: 2025-07-11 23:54:36 作者: admin 观测: 5372
windows - 什么是 DLL 文件,它们是如何工作的?

什么是 DLL?

DLL 文件是二进制文件,可以包含可执行代码和图像等资源。与应用程序不同,这些文件不能直接执行,但应用程序会在需要时加载它们(或在启动期间一次性加载)。

它们重要吗?

大多数应用程序将在启动时加载它们所需的 DLL 文件。如果没有找到其中任何一个,系统将根本无法启动该过程。

DLL 文件可能需要其他 DLL 文件

与应用程序需要 DLL 文件一样,DLL 文件可能依赖于其他 DLL 文件本身。如果在依赖链中找不到这些 DLL 文件之一,则不会加载应用程序。这可以使用任何依赖遍历器工具轻松调试,例如Dependency Walker。

系统文件夹里有这么多

大多数系统功能以 DLL 文件的形式向用户程序公开,因为它们是共享代码/资源的标准形式。每个功能都单独保存在不同的 DLL 文件中,以便只加载所需的 DLL 文件,从而减少系统的内存限制。

已安装的应用程序也使用 DLL 文件

如上所述,DLL 文件也成为物理分离功能的一种形式。好的应用程序也会尝试在绝对需要之前不加载 DLL 文件,从而减少内存需求。这也会导致应用程序附带大量 DLL 文件。

DLL 地狱

然而,当共享 DLL 文件和需要它们的程序之间存在版本不匹配时,系统升级经常会破坏其他程序。系统检查点和DLL缓存等一直是M$解决这个问题的举措。.NET 平台可能根本不会遇到这个问题。

我们如何知道 DLL 文件中的内容?

您必须使用像DUMPBIN或 Dependency Walker 这样的外部工具,它不仅可以显示 DLL 文件中包含哪些公开可见的函数(称为导出),还可以显示它需要哪些其他 DLL 文件以及从这些 DLL 文件中导出哪些该 DLL 文件是依赖的。

我们如何创建/使用它们?

请参阅供应商提供的编程文档。对于 C++,请参阅 MSDN 中的LoadLibrary。

← 【文化拾遗 魅力泉州】蟳埔千年渔村:古韵悠悠 致美世界 公司向个人转款跨行需要多久时间才会到账? →

相关时空节点

重磅:世界杯期间64场比赛全部开放单关!(附北单彩蛋)

重磅:世界杯期间64场比赛全部开放单关!(附北单彩蛋)

07-07 💫 23
3亿投资的《白鹿原》遭停播,原因是:审查太严

3亿投资的《白鹿原》遭停播,原因是:审查太严

06-29 💫 31
手机充电头发热怎么回事?小心这几个地方出问题!

手机充电头发热怎么回事?小心这几个地方出问题!

07-05 💫 567