初入博客园~关于DLL文件的了解。

    在52破解论坛上看见一个关于木马病毒的介绍:“cmcs21.dll (木马文件 MD5: 7A3D3060EEAB5566A52B819713328367),这是木马的核心DLL”,看见dll就想到我在自己的电脑文件上看见过很多次,但是就是不知道是什么文件,也不知道是干什么用的。于是对DLL文件进行百度。

    以下是百度百科对DLL的解释: 

    DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用,这样的DLL文件被称为共享DLL文件。

    DLL文件中存放的是各类程序的函数(子过程)实现过程,当程序需要调用函数时需要先载入DLL,然后取得函数的地址,最后进行调用。使用DLL文件的好处是程序不需要在运行之初加载所有代码,只有在程序需要某个函数的时候才从DLL中取出。另外,使用DLL文件还可以减小程序的体积。

    以下是百度知道答主woainiruojie 对问题【.dll的文件都是病毒文件吗?! 】的回答(侵删):

    DLL文件是动态链接库文件,许多应用程序都是需要调用这种文件的。就是因为软件可以调用这种文件,所以就给病毒可趁之机,有许多病毒就会利用这点,把自己嵌入到正常的dll文件中,那么软件运行时,就无形执行了病毒。

     特点(摘自百度百科):

      ①使用较少的资源
        当多个程序使用同一个函数库时,DLL 可以减少在磁盘和物理内存中加载的代码的重复量。这不仅可以大大影响在前台运行的程序,而且可以大大影响其他在 Windows操作系统上运行的程序。
      ②推广模块式体系结构
        DLL 有助于促进模块式程序的开发。这可以帮助您开发要求提供多个语言版本的大型程序或要求具有模块式体系结构的程序。模块式程序的一个示例是具有多个可以在运行时动态加载的模块的计帐程序。
      ③简化部署和安装
        当 DLL 中的函数需要更新或修复时,部署和安装 DLL 不要求重新建立程序与该 DLL 的链接。此外,如果多个程序使用同一个 DLL,那么多个程序都将从该更新或修复中获益。当您使用定期更新或修复的第三方 DLL 时,此问题可能会更频繁地出现。
 

个人总结:

DLL是应用程序扩展,不管什么软件都须要相关的DLL文件才能运行。

DLL 是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件。

动态链接提供了一种方法,使进程可以调用不属于其可执行代码的函数。

函数的可执行代码位于一个 DLL 中,该 DLL 包含一个或多个已被编译、链接并与使用它们的进程分开存储的函数。

DLL 还有助于共享数据和资源。

多个应用程序可同时访问内存中单个DLL 副本的内容。

DLL 是一个包含可由多个程序同时使用的代码和数据的库。

另外没有.exe可执行文件调用就是废物,不能发挥任何作用。

posted on 2018-07-20 16:15  StellaMok  阅读(230)  评论(0编辑  收藏  举报