shadow of slayershome  
  
查看: 2512|回复: 4

[教学] 管理DLL文件提升Windows运行效率

[复制链接]
发表于 1970-1-1 08:00:00 | 显示全部楼层 |阅读模式
对于菜鸟级的电脑玩家,我们并不需要弄清DLL文件的真实面貌;但如果我们自己的电脑操作水平更上一个台阶的话,那就必须善于管理、利用DLL文件,因为巧妙地用好DLL文件可以让系统运行效率更高!这不,本文下面提供的三则DLL文件管理技巧,可以让系统实现意想不到的运行效果!
# \% k* ~" a/ T
4 }8 {. F9 |; V6 C/ U1、逼迫DLL文件交出内存资源2 C* ]% m1 e0 u9 _2 y; Y

- G/ p0 i( A5 c- v不少应用程序在启动时需要调用某些DLL文件,这些DLL文件往往会占用一定的内存资源,但遗憾的是当应用程序被使用完毕退出系统后,那些曾经被调用的DLL文件并不会随程序关闭而自动交出它们所占用的内存资源,这样就容易造成内存资源的浪费,并且随着运行的应用程序越多,系统内存资源就被消耗得越多,最终会影响系统的整体运行效率。那有没有办法逼迫那些已经过时的DLL文件,交出它们所占有的内存资源,从而保证系统内存空间始终处于“干净”状态呢?答案是肯定的,我们可以按照如下步骤来逼迫DLL文件交出内存资源:
% u& u% \, y4 p, @' m9 r# N( l2 x8 w, `5 p+ m
依次单击“开始”/“运行”命令,在弹出的系统运行对话框中,输入字符串命令“regedit”,单击“确定”按钮后,打开系统的注册表编辑界面;4 k8 |& A4 N0 y# b; x

8 E. h. n$ B& X( G4 H: W% a在注册表编辑界面中,找到其中的注册表分支HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer
/ w+ a1 `5 v' R5 C' ]" h9 H' q在对应“Explorer”子键的右侧窗口区域中,检查一下是否有“AlwaysUnloadDLL”字符串键值的身影,如果没有的话,那可以用鼠标右键单击右侧窗口区域中的空白位置,并从弹出的快捷菜单中依次执行“新建”、“字符串值”命令,然后将新创建好的字符串值名称设置为“AlwaysUnloadDLL”,再用鼠标双击“AlwaysUnloadDLL”键值,在其后界面的“数值数据”文本框中直接输入数字“1”,并单击“确定”按钮,最后刷新一下系统注册表,这样就能逼迫那些过时的DLL文件交出曾经占有的系统内存资源了。
! N4 i  O( e0 n  j( B% ]5 m5 z4 g: K( E8 ?" `, b: b
2、逼迫DLL文件交出空间资源
9 N5 X3 D" u! T7 b! y
/ S* K, E. m5 c% g在频繁地安装与卸载应用程序之后,系统中的有些DLL文件就会变成无用的垃圾文件,不过这些垃圾文件仍然会占用系统的硬盘空间资源,时间一长越来越多的垃圾DLL文件就会消耗越来越多的硬盘空间资源。为此,我们可以通过下面的操作步骤,来将无用的垃圾DLL文件删除掉:! ~4 H  _  Z; _3 X2 n* S

& i- u4 D' z$ C- D& ^依次单击“开始”/“运行”命令,在弹出的系统运行对话框中,输入字符串命令“regedit”,单击“确定”按钮后,打开系统的注册表编辑界面;
3 w7 m  i: _4 f! V6 N8 D- _# g7 l% r0 F  j5 t/ B7 b  H* q9 I
用鼠标逐一展开其中的注册表分支HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls( D* B  i9 e% [8 \  i6 k( T" ^
在对应“SharedDlls”子键的右侧窗口区域中,我们就能看到当前系统的所有DLL调用情况,要是对应某个DLL文件的数据显示为“0”的话,那就说明没有应用程序使用该DLL文件,那么该DLL文件就是无用垃圾文件,将这些无用的DLL文件名称逐一记录下来;
( L; ~0 E+ [5 s& T, Q# L+ y. J4 X+ T
! J% ]! L2 K, V7 n5 w接下来返回到Windows系统桌面,并依次单击“开始”/“搜索”/“文件或文件夹”命令,然后在弹出的系统搜索文件对话框中,输入前面记录下来的无用DLL文件,再单击“搜索”按钮找到无用DLL文件所在的具体位置,之后将这些找到的DLL文件临时转移到其他位置,并让系统再运行一些日子,看看系统是否能够正常运行,要是系统仍然可以正常运行的话,那我们就能把那些无用的DLL文件真的从硬盘中删除掉了,这样就能有效地节省硬盘空间资源了。  H; j( A8 x3 x( a) m# l

8 ~  f2 o3 R) {" _2 V' F3、借用DLL文件解决系统运行错误
6 ~3 \6 B- |8 b* V* H' C: L
9 u. G. r# x; _! J) y; i% F6 N由于许多应用程序的DLL文件都是共用的,一旦对某个应用程序执行了卸载操作之后,共用的那个DLL文件也有可能被随之卸载,这么一来其他应用程序运行时由于找不到共用DLL文件而出现运行错误。当不幸遇到这样的故障现象时,我们不妨通过对DLL文件的注册与卸载,来快速有效地解决各种常见的系统故障。
8 ~* l: S" G7 R! w. A3 g$ {2 E, F/ \5 e/ o8 s
一般情况下,要注册某个DLL文件时,我们可以打开系统运行对话框,然后在其中输入字符串命令“regsvr32 aaa.dll”(其中regsvr32为动态链接文件的注册命令,aaa.dll文件为具体的目标动态链接文件),单击“确定”按钮后,系统就能自动将目标DLL文件注册成功了!如果要对某个目标DLL文件进行反注册的话,那可以在系统运行对话框中输入“regsvr32 aaa.dll /u”(其中“u”参数表示反注册的意思),单击“确定”按钮后,系统就能自动将目标DLL文件从系统中卸载掉了!比方说,我们要是想将Windows XP系统默认的ZIP压缩功能卸载掉的话,那就可以在系统运行对话框中执行“regsvr32 %windir%\system32\zipfldr.dll /u”字符串命令。
" m4 J# M5 [6 x( l1 q
+ [/ S; L$ |& j' O" z# Q当然,逐个逐个地注册或反注册DLL文件,显然会影响系统的操作效率。事实上,我们完全可以通过创建批处理文件的方法,来快速对多个目标DLL文件进行注册或反注册;例如,我们要想一次性对system32子文件夹中的aa.dll文件与bb.dll文件进行注册的话,就可以打开记事本编辑程序,并在其编辑界面中输入下面的命令代码:
* L2 \5 k5 h) v  [: A1 R
- H/ Y' C; ~$ M" y6 M( p@echo off9 M1 f- F" C0 C9 g+ e; H

- g3 ~7 x3 l7 Q0 hregsvr32 aa.dll /s
, X. E* i/ Z# {) D' w4 w3 C8 |! o% s/ T
regsvr32 bb.dll /s" H1 h: d* i% V$ h+ p( B! b) `
) i5 ^+ R  ^: q6 g9 H8 K  J
其中“s”参数表示目标DLL文件被注册成功后系统不弹出成功提示窗口,将上面的代码保存成扩展名为bat的批处理后,再用鼠标双击该批处理文件系统就能同时对aa.dll文件与bb.dll文件进行注册操作了。7 ~$ L! Q$ {9 Y; `( w; ~: p
+ |6 E& f$ U8 a- M
当然,系统一旦发生DLL文件相关错误时,我们往往无从知道究竟是哪一个目标DLL文件引起的,为了要顺利解决这样的故障,我们索性就将系统system32子文件夹中的所有DLL文件重新进行一下注册。在对所有DLL文件进行快速注册时,可以按照如下操作步骤来进行:  _$ J1 ?$ x$ A( N  z

% D: R  C" U" [$ ?5 t( B逐一单击“开始”、“运行”项目,打开系统的运行对话框,在其中输入字符串命令“cmd”,单击“确定”按钮后,将系统切换到MS-DOS工作状态;9 W+ a% G, _0 f4 [, o

- T( m9 @) h. i+ p3 l在DOS命令行中,输入字符串命令“for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1 ”,单击回车键后,系统就会自动对所有的DLL文件进行依次注册,一旦出现注册失败的话还会给出相应的失败提示。为了日后方便对所有DLL文件重新注册,我们还可以将上面的字符串命令写入到批处理文件中保存起来,下次需要对所有DLL文件重新注册时只需要双击对应的批处理文件就能解决问题了。
发表于 1970-1-1 08:00:00 | 显示全部楼层

re:

仰望……偶最怕改注册表了……上次删错了郁闷死……││││││2 }2 |4 s: R6 _% B8 }& h
& t3 d3 R' |0 u( D
儿子学什么专业的?
 楼主| 发表于 1970-1-1 08:00:00 | 显示全部楼层

re:

计算机………… 1 \' }  d2 p. m) o
0 o- B$ T. i3 `2 H9 X$ n; S
不知道大学学些什么课程……反正中专是什么也没学到
3 Z& [. y" T) a5 Y' I9 d5555妈妈,偶就浪费了这4年了
发表于 1970-1-1 08:00:00 | 显示全部楼层

re:

摸摸~~~~~~计算机不错啊……不会是编程啥米的吧?
4 d% b; c/ `4 B9 _9 n# V9 L* Z推荐你考研考个管理专业
 楼主| 发表于 1970-1-1 08:00:00 | 显示全部楼层

re:

这个怎么说呢…………学什么东东开学就知道了
: x" C" G# T+ m5 Q: J+ [1 {1 ^; ~
考研……我暂时先放弃吧。我现在是专科
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表