Dll与exe的区别及使用详解

目录

一、前言

二、用途:

2.1、EXE:

2.2、DLL:

2.3、用途总结

1、扩展应用程序

2、便于程序员合作

3、节省内存

4、共享程序资源

5、解决应用程序本地化问题

三、结构

四、加载方式:

五、共享和重用:

六、更新和维护:

七、依赖性:

八、总结


一、前言

        DLL(Dynamic Link Library,动态链接库)和EXE(Executable, 可执行文件)是两种不同类型的文件格式,主要用于不同的目的。

       DLL中虽然包含了可执行代码却不能单独执行,而应由Windows应用程序直接或间接调用。

二、用途:

2.1、EXE:

        EXE文件是可执行文件,可以直接运行。它包含了程序的入口点(通常是main函数),操作系统可以加载并执行这个文件。

2.2、DLL:

        DLL文件是动态链接库,不能直接运行。它们包含了一些可以被其他程序调用的函数和资源。DLL文件通常用于共享代码和资源,以便多个程序可以重用相同的功能。

       所谓静态链接是指把要调用的函数或者过程链接到可执行文件中,成为可执行文件的一部分。换句话说,函数和过程的代码就在程序的exe文件中,该文件包含了运行时所需的全部代码。当多个程序都调用相同函数时,内存中就会存在这个函数的多个拷贝,这样就浪费了宝贵的内存资源。

      动态链接所调用的函数代码并没有被拷贝到应用程序的可执行文件中去,而是仅仅在其中加入了所调用函数的描述信息(往往是一些重定位信息)。仅当应用程序被装入内存开始运行时,在Windows的管理下,才在应用程序与相应的DLL之间建立链接关系。当要执行所调用DLL中的函数时,根据链接产生的重定位信息,Windows才转去执行DLL中相应的函数代码。

2.3、用途总结

1、扩展应用程序

  由于DLL能被应用程序动态载入内存。所以,应用程序可以在需要时才将DLL载入到内存中,这让程序的可维护性变得很高。比如QQ的视频功能需要升级,那么负责编写QQ的程序员不必将QQ所有代码都重写,只需将视频功能相关的DLL文件重

  • 22
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大王算法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值