首页 新闻 会员 周边

dll和exe有什么区别?

0
悬赏园豆:5 [已解决问题] 解决于 2012-08-29 22:56

dll和exe有什么区别?
什么时候生成的是dll,什么时候生成的是exe?

C#
西夏普砖家的主页 西夏普砖家 | 初学一级 | 园豆:183
提问于:2012-08-19 19:59
< >
分享
最佳答案
1

dll,全称是Dynamic Link Libaray,即动态链接库,将程序运行所需要的类或方法的实现放在dll中,这样当可执行文件(即.exe文件)需要使用相关的类、方法时从dll中动态地获取,节省了可执行文件在编译、执行时花费的时间。dll比静态库更方便的是不用重新编译全部的.exe文件,只需修改相应的dll的源程序就可以实现功能上的修改。

在C#中,如果新建的工程类型是“Windows窗体应用程序”或“控制台应用程序”那么编译生成的就是.exe文件,如果新建的工程类型是“类库”,那么编译生成的是dll文件,一般在设计中,采用两种方法相结合的方式,即在一个Solution中既有.exe项目也有.dll项目,将所有的类、接口的实现都放在类库中,.exe的源代码里只放Main函数和功能入口。

收获园豆:1
飞鸟_Asuka | 菜鸟二级 |园豆:209 | 2012-08-20 10:38
其他回答(4)
0

类库生成的是dll

控制台 windows程序都是exe的

chenping2008 | 园豆:9836 (大侠五级) | 2012-08-19 22:38
0

exe:就执行文件

dll:是类库

jason2013 | 园豆:1998 (小虾三级) | 2012-08-20 08:32
0

dll 是动态链接库,就是说dll里包含了翻译后的一些程序中要调用的方法。但dll文件不可以执行,只允许被调用。

exe是可执行文件,一般做为程序的执行入口。

dll 和 exe 的生成:翻译器会对你开发的应用程序中所用到的类库生成成dll文件,而且exe则取决于你编写的程序,如果你编写的客户端程序,需要用户安装,那么这种情况下要生成exe供用户执行安装操作。

收获园豆:2
jerry-Tom | 园豆:4077 (老鸟四级) | 2012-08-20 10:30
0

贴主给你讲一个比喻吧……

 

exe 它可以自动装入内存,让计算机来执行它的代码。dll没这样的功能,需要别的程序来唤醒它,平时不用的时候它就静静地躺在硬盘里,exe不一样,它有跟cpu打交道的能力,它可以让cpu理解自己,dll只能让别的程序来翻译它,才能让cpu理解它。

收获园豆:1
需要格局 | 园豆:2145 (老鸟四级) | 2012-08-20 14:52
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册