WindowsXP的日常维护是件既耗时又无聊的事情,如果WindowsXP能够聪明一点,进行自动维护就好了。下面,就为大家介绍一种通过.inf文件让WindowsXP进行自动维护的技巧,自动维护的具体内容可以任意设定,不过需要命令来实现。比如用Xcopy进行文件备份、Defrag进行
磁盘碎片整理、Del删除垃圾文件等等。为了讲清楚原理,下面我们以Defrag为例,你可以根据自己的需要进行修改。 实现步骤
$ S) C. X: b4 F, E 1.建立Main.bat文件
7 W% B {/ w% P! s! C- u9 c$ _ 以
管理员身份登录WindowsXP,在
系统盘的根目录下新建一个名为Main.bat的文件(文件名可以随便取,下同)并输入如下内容:
# W1 P+ A4 L4 H6 J7 M
cd\
! g; i6 T" `) O/ K C:
5 E) {6 }, A+ U( z
cdWindows\system32
0 a3 \4 A2 b- E* k5 z4 M defragC:/f
A6 z c2 J: b, R
chkntfsC:
8 G8 B' a) S( D% x' R 2.建立Main.inf文件
* H" w' P \) e7 D- Q 新建一个文件名为Main.inf的文件并输入:
8 [* f1 J! }. \$ Z7 r# k
[version]
) F7 ], P! B6 ?4 k! s) q
Signature="$CHICAGO$"
" R$ N; [, ?! B( H+ x$ r
AdvancedINF=2.5,"advpack.dll"
d* d: W+ b& X8 |( I [DefaultInstall]
8 D- \# H% b4 y- [
RunPreSetupCommands=Tst.PreSetup
- _! Z0 _5 l9 {& n, r! F; R0 I' m3 o
RunPostSetupCommands=Tst.PostSetup
: Z3 [9 H' T( W& U' Y
[Tst.PreSetup]
0 a! _- k, d; Q% n% J C:\Main.bat
) \' u. o9 v2 R* C0 G [Tst.PostSetup]
7 k G8 n- }1 X. q
C:\WINDOWS\SYSTEM32\TSSHUTDN.EXE0/DELAY:0/POWERDOWN
* z( J% G( e/ Q
在这个文件中,Signature必须设置为”$CHICAGO$”,否则文件将无法起作用。
1 U( m1 m4 N3 E( U
3.建立Begin.bat文件
" c9 x4 Y) j" R- a5 b T, w 在C盘根目录下建立批处理文件Begin.bat,向这个文件中输入:
% a2 \: q, W0 G2 M. M% Y- W Z6 L C:\WINDOWS\
System32\rundll32.exeadvpack.dll,LaunchINFSectionEx
: A& X( K* ]7 Z# b C:\Main.inf,DefaultInstall,,32
8 l6 P5 P2 T3 z. f 这个命令的作用是让WindowsXP启动一个
硬件安装过程,从而执行.inf文件中的指令。Rundll32.exe在Windows中被用来调用DLL文件(动态链接库)中函数提供的
功能。比如这里的rundll32.exe就调用了advpack.dll中的LaunchINFSectionEx函数,这个函数的作用就是启动一个.inf安装过程。不过Main.inf的内容已经和
硬件安装无关,而是被我们偷梁换柱改成了系统自动维护的命令。
3 K$ U: W' j. }1 n+ T* z" r8 ? 4.计划任务
& M( C* T1 S* C) \! z+ M3 F
计划任务的作用是定期执行Begin.bat文件,实现步骤如下:
3 s/ L$ w% O. {7 _1 e! M3 U$ x
(1)打开WindowsXP的开始菜单进入“程序→
附件→系统工具→计划任务”,双击“添加计划任务”,单击“浏览”,找到C盘根目录下面的Begin.bat文件,然后单击“下一步”按钮;
! O$ T7 @4 d/ D! a9 S1 d
(2)设置任务执行周期为“每周”,然后单击“下一步”按钮;
# g7 l8 `; ~8 s% R8 I& ]$ V0 Y
(3)设置执行计划任务的密码,也就是
计算机的管理员密码,然后单击“下一步”按钮;
7 l2 ~+ I& z6 O% P& E0 m. h0 r# L (4)设置执行任务的具体日期和时间。
2 d# h2 h9 i$ |6 u# G 在以上例子中,我们让这个计划任务每周日的23:30执行一次文件C:\Begin.bat,进行自动维护。
( _& ?" }' }9 ?# M3 ?! J- L% ]0 B
实现原理
8 R4 R3 X* J% _3 q) T( l .inf文件通常用于硬件安装,其实是一个文本文件。当用户在文件上单击
鼠标右键选择“安装”的时候,Windows将会根据这个文件的内容执行一系列操作,上面介绍的自动维护方法就是借助.inf文件的这个特点实现的。
; S% N5 o$ o% q 我们建立的计划任务启动时,它会调用Begin.bat。Begin.bat将使用Main.inf作为配置文件启动一个安装过程,按照Main.inf中的内容执行一系列操作。
3 W5 ]- s1 u8 v) S1 H
Main.inf启动时会首先执行[Tst.PreSetup]段中的语句,也就是“C:\Main.bat”,Main.bat被调用时,Windows将对C:进行磁盘碎片整理工作。Main.bat的内容越丰富,自动维护的功能就越强大。
+ x7 k. T8 V, @6 ]3 e; @ u
Main.bat中的命令都执行完毕后,[Trs.PostSetup]中的语句又将被执行,也就是:
& S7 ?( ^" J3 e% ^1 b7 [3 X
C:\WINDOWS\SYSTEM32\TSSHUTDN.EXE0/DELAY:0/POWERDOWN
0 m$ ?. E% B0 a+ ]' Y) E& \- l9 u, D 这个语句的作用是关闭计算机,其实是“关闭WindowsXP+关闭
电源”。
& K7 a( L; |; H2 `3 d: s 最后要注意的一点,这个方法只能在WindowsXPProfessionl中实现,WindowsXPHome无法使用。