时间:2014-10-17 09:21:14 来源: 复制分享
dll文件(Dynamic Linkable Library 即动态链接库文件),是一种不能单独运行的文件,它允许程序共享执行特殊任务所必需的代码和其他资源。
通过使用 DLL,程序可以实现模块化,由相对独立的组件组成。例如,一个计帐程序可以按模块来销售。可以在运行时将各个模块加载到主程序中(如果安装了相应模块)。因为模块是彼此独立的,所以程序的加载速度更快,而且模块只在相应的功能被请求时才加载。
Windows操作系统中的一些作为 DLL 实现的文件
ActiveX 控件 (.ocx) 文件
ActiveX控件的一个示例是日历控件,它使您可以从日历中选择日期。
控制面板 (.cpl) 文件
.cpl 文件的一个示例是位于控制面板中的项。每个项都是一个专用 DLL。
设备驱动程序(.drv) 文件
设备驱动程序的一个示例是控制打印到打印机的打印机驱动程序。
电脑中后缀名为dll是动态链接库文件,与exe、com等文件一样都是可执行文件。在Windows系统中,应用程序有很多不同的功能模块,这些功能的实现就需要有dll文件的参与。一个dll文件可以被多个应用程序调用,一个应用程序也可以有多个dll文件。总之dll是一个包含可以由多个程序同时调用的代码或数据的库文件。
dll加载出错怎么解决
最近发现,有很多电脑的玩家可以都不知道dll是什么文件,当电脑出现dll加载出错时就显得非常紧张。今天小编请来了系统工程师来为大家补充一下dll是什么文件以及遇到dll加载出错怎么解决的问题。希望通过我们的这次专访,能为大家解决一些日常的电脑常见问题
我们在使用电脑时经常会遇见dll加载出错的问题,一般用户在使用杀毒软件或者木马专杀工具扫描并删除一些病毒文件后会出现这一情况。
dll加载出错大多是因为文件丢失导致的,这个时候也不用紧张,教大家一个方法。打开注册表编辑器,在里面搜索加载出错的。dll的文件名,在搜到的结果页面中,查看对应的dll路径,再去相应的路径下检查文件是否存在,如果不存在,就将这个注册表信息删除,注意要搜索出错的dll文件才行。
虽然出现DLL文件错误的原因很多,但平常用家遇到的问题归结起来不外乎系统软件方面和硬件方面的问题。
系统软件方面的解决招式
轻手:
用最新版本的杀毒软件查杀病毒。有相当部分的病毒会造成系统文件的丢失或损坏,所以首先要升级病毒库彻底查杀病毒。
中拳:
使用系统自带的修复或还原功堋TIN98、ME中,在“开始运行”对话框中键入“sfc”并回车,启动“系统文件检查器”进行常规检查。若查出有错误,按照提示从系统盘中提取相关文件即可;在WindowsXP中,Windows文件保护功能可以保护一些系统文件,例如.sys、.dll、.ocx、.ttf、.fon和.exe文件。Windows文件保护在后台运行,可保护Windows安装程序安装的所有文件,而这些文件就保存在windowsxp的安装目录下的\system32\dllcache\下面。windows文件保护需要拷贝或还原文件时,把你的xp安装盘放入或者指定你在硬盘上备份的路径即可。如果是在整理完注册表后出现,则需要恢复注册表。
重刀:
自己动手,丰衣足食。有少部分DLL文件出错是要靠手动解决或升级系统文件解决的。
Windows 系统平台上提供了一种完全不同的较有效的编程和运行环境,你可以将独立的程序模块创建为较小的 DLL (Dynamic Linkable Library) 文件,并可对它们单独编译和测试。在运行时,只有当 EXE 程序确实要调用这些 DLL 模块的情况下,系统才会将它们装载到内存空间中。这种方式不仅减少了 EXE 文件的大小和对内存空间的需求,而且使这些 DLL 模块可以同时被多个应用程序使用。Windows 自己就将一些主要的系统功能以 DLL 模块的形式实现。
简单DLL文件反编译
1、首先下载vs2008
反编译步骤:
1、将你要破解的DLL文件放在C盘执行
2、开始》所以程序》Microsoft Windows SDK v6.0A》tools》IL 反汇编程序
3、找到放在C盘的DLL文件
4、然后 文件》转储》确定位置并确认
5、好了 看看C盘是否多了 两个文件 xxx.il xxx.res
6、修改 xxx.il 文件内的代码
7、修改完成后将xxx.il和 xxx.res 把这两个文件复制到 C:\Program Files\Microsoft Visual Studio 9.0\VC这个目录下
8、然后执行:开始》所以程序》Microsoft Visual Studio 2008》Visual Studio Tools》Visual Studio 2008 命令提示
9、执行:ilasm /dll /resource=xxx.res xxx.il xxx代表你取的名字
10、然后去看看C:\Program Files\Microsoft Visual Studio 9.0\VC 这个目录下是不是多了一个xxx.dll文件 把编译出来的文件拿去使用就OK了