DLL后缀的文件是Dynamic Link Library的缩写,也就是意为动态链接库。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可有多个DLL文件,一个DLL文件也可能被几个应用程序所共用,这样的DLL文件被称为共享DLL文件。DLL文件一般被存放在C:WindowsSystem目录下

  二、修改DLL文件的具体应用



  在系统的组策略和注册表中,我们可以修改一些键值来优化我们的系统,并加强操作系统的安全性。可是,对于限制下载、禁止删除文件等功能,我们无法通过上述的操作来完成,这只有通过修改系统DLL文件来实现。目前,我们通过修改系统的DLL文件,可以实现禁止删除文件、禁止IE下载、禁止IE另存为、禁止文件打开方式等功能。



  三、系统中部分DLL文件的功能



  1、Browselc.dll IE所需要调用的库文件DLL结构雏形就是它了



  2、Shdoclc.dll 系统窗口及设置等,如删除文件、重命名



  3、Shell32.dll 系统窗口及设置等,如删除文件、重命名



  4、Cryptui.dll IE控件下载及提示对话框程序



  四、修改DLL文件的方法



Passolo V6.0.04这个我用的顺手,给大家个下载地址http://www.skycn.com/soft/15710.html



  2、获取Browselc.dll、Shdoclc.dll、Shell32.dll和Cryptui.dll这几个链接文件。在找这几个文件时,最好将其他机器的硬盘,挂接在本机中,然后用本机的操作系统启动并复制这几个文件。



  3、在修改DLL文件的时候,打开该键值,在右面的对话框中将所要修改的键值禁用即可,不要删除,以备日后恢复



  五、DLL文件修改秘籍



  1、禁止下载的修改方法:打开Shdoclc.dll修改资源--对话框---4416,将4416键值禁用即可。



  2、禁止网页添加到收藏夹,打开Shdoclc.dll修改资源--对话框---21400,将该键值禁用即可。



  3、禁止恶意网页加载控件,修改Cryptui.dll文件,要同时修改5个地方才能完全禁止 资源--对话框---130 资源--对话框---230 资源--对话框---4101 资源--对话框---4104 资源--对话框---4107 将以各对话框中的相应键值,修改成为禁用就可以了。



  4、禁止系统删除文件修改Shell32.dll,这个文件需要修改5个地方才可以禁止系统删除文件。资源--对话框---1011 资源--对话框---1012 资源--对话框---1013 资源--对话框---1021 资源--对话框---1022 将以上五个地址的键值禁用就可以了!



  5、禁止文件被改名,修改shell32.dll,有2个地方需要修改资源--对话框---1018 资源--对话框---1019 将以上两处的相应键值,修改为禁用就可以了!



  6、禁止运行菜单,修改shell32.dll,将资源--对话框---1018键值设置为禁用。



  7、禁止系统文件被挪动修改shell32.dll,需要修改4个地方 资源--对话框---1014 资源--对话框---1015 资源--对话框---1016 资源--对话框---1017



  8、禁止目标另存为,修改Shdoclc.dll文件,需要修改3个地方 资源--菜单--258---257 资源--菜单--258---252 资源--菜单--24641--2268 在这个修改中,我们要把各对应的键值删除。打开该键值后,右键菜单中有删除。在资源--菜单--24641—2268中,有多项该键值,请逐一删除。



  9、禁止自定义文件夹选项修改Shell32.dll文件,需要修改以下4个地方 资源--菜单--215---28719 资源--菜单--216---28719 资源--菜单--217---28719 资源--菜单--216---28719 找到以上四处键值,直接需要删除后即可,而不是禁用。



  10、禁止IE文件夹选项,修改Browselc.dll文件,需要修改3个键值 资源--菜单--263 (这里有多个请删除)---41251(删除) 资源--菜单--266(也有多个请删除)---41329 (删除) 资源--菜单--268---41251 (删除) 在上面的3个键值中,个别键值有多处,请逐一删除。



  11、禁止98文件共享控件,修改Msshrui.dll,需要修改2个地方 资源---对话框---- 1 --- AutoRadioButton 资源---对话框---- 30 --- AutoRadioButton 将以上两处的键值禁用即可。其他的选项,可以根据自己的需要进行修改。找到相应的功能键值,将不需要的功能,禁用就可以了。



  12、禁止文件的打开方式,修改Url.dll,需要修改2个地方 资源---对话框--- 7000 资源---对话框--- 7005 将以上两处的键值禁用即可。



  13、禁止更改系统桌面,修改Shdoc401.dll,有2处地方需要修改 资源---对话框--- 29952--- PushButton:浏览资源---对话框--- 29952--- PushButton:图案 将以上两处的键值禁用即可。



  14、禁止系统文件夹自定义,修改Shd401lc.dll,有2处地方需要修改 资源---对话框--- 29957 资源---对话框--- 29958 将以上两处的键值禁用即可。



  15、禁止文件保存路径及打开,修改Comdlg32.dll,有2处地方需要修改 资源---对话框--- 1547 资源---对话框--- 1548 将以上两处的键值禁用即可。



  六、注意事项



  1、本文以Windows XP/2000操作系统的DLL文件修改为例,并不一定适用于Windows 98操作系统,请在修改DLL文件时注意。



  2、在禁止下载的操作中,除修改禁止下载的链接文件Shdoclc.dll外,还要修改禁止文件另存为的链接文件Shdoclc.dll。如果修改一个链接文件无法实现相应的功能,请查看其他链接文件中是否存在需要修改的键值。



  3、修改后的DLL链接文件,需要在DOS模式下导入并重新启动机器才有效。



  4、本文章只介绍了我们日常操作中经常用到的DLL修改选项,其他选项请参看DLL文件中的具体选项进行修改。



  5、在修改DLL文件前,请先备份系统原有的DLL文件,以备修改失败恢复



  DLL修改实例讲解



  ※ 关于系统托盘图标的修改 ※



  网络连接和音量~~~
  这两个都在C:/WINDOWS/system32文件夹下面,可以找到
  (网络连接)图标是在netshell.dll图标项的#1915--#1918
  (音量)stobject.dll图标项的 230--231
  还有 (音量)stobject.dll图标项的 230--231



  ※ 关于打开/保存对话框右上角按钮的修改 ※



  还有好多人提到打开和另存为对话框右上角那个几个位图的问题,在这还是在说一遍:是comctl32.dll里面的位图项124--131,在这下面两个文件夹里面 
  X:/WINDWOS/WinSxS/x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a
  X:/WINDWOS/WinSxS/x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.10.0_x-ww_f7fb5805



  ※ 关于IE下载对话框动画的修改 ※



  IE下载的AVI也有好多人问
  在C:/WINDOWS/system32/SHDOCVW.DLL里面的AVI资源256



  ※ 关于资源管理器/IE工具栏按钮的修改 ※



  IE和资源管理器的工具栏按钮的替换位置为shell32.dll位图204--217
  IE角上微标的替换位置为 shell32.dll 里面位图240-242



  ※ 关于关机/注销对话框的修改 ※



  还有问的最多的问题就是关机和注销对话框了
  关机是msgina.dll,
  注销是shell32.dll



  ※ 关于Windows图片查看器的修改 ※



  图片和传真查看器也是比较常见地~~~ 标题栏的字样可以修改里面字符串的第一项 
  下面一排按钮是shimgvw.dll位图项104~107



  ※ 关于控制面板项目的修改 ※



  控制面板的分类视图的各个图标位置为shell32.dll图标项268~276
  控制面板的经典视图的各项图标一般在C:/WINDOWS/system32下对应的.cpl文件,分别为:
  modem.cpl 调制解调器图标
  main.cpl 鼠标图标
  netcpl.cpl网络连接图标
  ODBCCP32.CPL ODBC 数据源
  powercfg.cpl电源选项
  main.cpl 打印机和传真图标
  intl.cpl区域和语言设置图标
  appwiz.cpl 添加/删除应用程序图标
  mmsys.cpl声音与多媒体图标
  sysdm.cpl系统图标
  inetcpl.cpl用户图标
  access.cpl辅助功能选项
  sysdm.cpl添加新硬件
  datetime.cpl日期时间图标
  desk.cpl 显示属性
  main.cpl字体图标
  joy.cpl 游戏控制器图标
  inetcpl.cpl Internet选项图标
  main.cpl 键盘图标
  mstask.dll任务计划图标
  等~~~~~~



  添加/删除应用程序的对话框



  很多人找不到最下面那个设定程序访问和默认值的图标,这里我也帖一下图啦 `~~
  appwiz.cpl 上面三个在位图项的101--103,而不是通常的图标项里面
  而最下面的图标在moricons.dll的图标项114



  ※ 关于系统属性对话框的修改 ※



  好多人想改系统属性对话框上的字和里面对应的图标、位图等,我帮大家收集了一下为下面的几个文件:
  计算机名netid.dll (对话框上的字,对话框项112)
  远程remotepg.dll (对话框上的字,对话框项510)
  自動更新wuaueng.dll(对话框上的字,对话框项501) 
  常规、硬件和高级选项sysdm.cpl (对话框上的字,对话框项101)
  系统还原 srrstr.dll (对话框上的字,对话框项11)



  ※ 关于显示属性对话框的修改 ※



  显示属性对话框也是大家个性化中首要考虑的一个问题~~
  于之相关的文件为themeui.dll和shell32.dll~~~



  ※ 其他 ※



  系统消息中使用的图标,这个大家替换的时候一定要注意一点,图标的格式和原来的图标的格式一定要一样的,否则有可能进不了系统!!!切记
  这个文件为:User32.dll图标项100--105



  工具栏位图替换C:/WINDOWS/PCHEALTH/HELPCTR/Binaries下helpctr.exe里面的位图项300#--303# 还有图标项200#
  还有就是里面的一些图标和位图等 下载下面的文件直接替换C:/WINDOWS/PCHEALTH/HELPCTR/System下的images文件夹

以dll后缀文件的补充:

一、DLL是动态连接库。使用动态连接库的一些好处是:
       1.多个应用程序共享代码和数据:比如Office软件的各个组成部分有相似的外观和功能,这就是通过共享动态连接库实现的。
       2.在钩子程序过滤系统消息时必须使用动态连接库。
       3.动态连接库以一种自然的方式将一个大的应用程序划分为几个小的模块,有利于小组内部成员的分工与合作。而且,各个模块可以独立升级。如果小组中的一个成员开发了一组实用例程,他就可以把这些例程放在一个动态连接库中,让小组的其他成员使用。
       4.为了实现应用程序的国际化,往往需要使用动态连接库。使用动态连接库可以将针对某一国家、语言的信息存放在其中。对于不同的版本,使用不同的动态连接库。在使用AppWizard生成应用程序时,我们可以指定资源文件使用的语言,这就是通过提供不同的动态连接库实现的。
       VC++、C++ Builder、Delphi都可以编写DLL文件。Visual Basic 5.0以上版本也可以编写一种特殊的DLL,即ActiveX DLL。

二、以扩展名DLL的文件怎么打开?
       答:DLL不是独立运行的程序,它是某个程序的一个部分,它只能由所属的程序调用。用户不能,也不需要打开它。

三、 教你认识DLL文件

DLL是Dynamic Link Library的缩写,意为动态链接库。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可有多个DLL文件,一个DLL文件也可能被几个应用程序所共用,这样的DLL文件被称为共享DLL文件。DLL文件一般被存放在C:WindowsSystem目录下。

1、如何了解某应用程序使用哪些DLL文件
右键单击该应用程序并选择快捷菜单中的“快速查看”命令,在随后出现的“快速查看”窗口的“引入表”一栏中你将看到其使用DLL文件的情况。

2、如何知道DLL文件被几个程序使用
运行Regedit,进入HKEY_LOCAL_MACHINESoftwareMicrosrftWindowsCurrent-
VersionSharedDlls子键查看,其右边窗口中就显示了所有DLL文件及其相关数据,其中数据右边小括号内的数字就说明了被几个程序使用,(2)表示被两个程序使用,(0)则表示无程序使用,可以将其删除。

3、如何解决DLL文件丢失的情况
有时在卸载文件时会提醒你删除某个DLL文件可能会影响其他应用程序的运行。所以当你卸载软件时,就有可能误删共享的DLL文件。一旦出现了丢失DLL文件的情况,如果你能确定其名称,可以在Sysbckup(系统备份文件夹)中找到该DLL文件,将其复制到System文件夹中。如果这样不行,在电脑启动时又总是出现“***dll文件丢失……”的提示框,你可以在“开始/运行”中运行Msconfig,进入系统配置实用程序对话框以后,单击选择“System.ini”标签,找出提示丢失的DLL文件,使其不被选中,这样开机时就不会出现错误提示了。

rundll的功能是以命令列的方式呼叫Windows的动态链结库。
Rundll32.exe与Rundll.exe的区别就在于前者是呼叫32位的链结库,后者是用于16位的链结库。rundll32.exe是专门用来调用dll文件的程序。
如果用的是Win98,rundll32.exe一般存在于Windows目录下;
如果用的WinXP,rundll32.exe一般存在于WindowsSystem32目录下。
若是在其它目录,就可能是一个木马程序,它会伪装成rundll32.exe。
◆建议:
一般由3721引起,卸载3721可以解决问题。
(在启动项中表现为“ Rundll32.exe C:WINDOWSDownloaded Program FilesCNSMIN.DLL,Rundll32 ”)

排除Rundll32错误(Mmsystem.dll)
计算机常常不定时出现:
·「Rundll32 这个程序执行无效,即将关闭...」。
  而按下详细资料显示:
  ·Rundll32 caused a general protection fault in module Mmsystem.dll....
  很可能的原因就是,你的 System.ini 这个文件里,在 [boot] 这个区段中,少了:
  drivers=mmsystem.dll
  这个叙述造成的,你自己补上去就可以解决这个问题。为什么会有这个错误的发生?大部分都是在使用控制面板「添加新硬件」这个功能时,使用不正确,像是需要驱动程序而你又不提供正确的驱动程序等等造成的。
使用记事本或任何的纯文字编辑软件(像 UltraEdit),打开位于 C:Windows 下的 System.ini 文件。
  找到 [ boot ] 这个区段。
  补上一行 drivers=mmsystem.dll
  补上后,记得「存盘」与「重新开机」。
  使用 Windows 98 的人,还有一个较方便的方法,你可以直接到「开始」>>「运行」,输入 msconfig,然后在 System.ini 这一页,打开 boot 文件夹,按新增,去新增一行叙述:
  drivers=mmsystem.dll
  设好后,记得储存你的设定,重新开机。