例三:制作能自动定时存盘的记事本
PK Ya'z;Zl7t0
我们最常用的记事本没有Word、WPS那样的自动定时存盘功能,其实利用VBS脚本再加上SendKeys命令,就能弥补这个遗憾。打开记事本,输入以下内容(为容易描述和分析,把代码分为四个部分):51Testing软件测试网9a/^5u`-b5V,dX6n
'第一部分:定义变量和对象51Testing软件测试网*K8CR9t&KDPgO
Dim WshShell, AutoSaveTime, TXTFileName
x_lV0M~?0
AutoSaveTime=30000051Testing软件测试网[D \xE
Set WshShell=Wscrīpt.CreateObject("Wscrīpt.Shell")51Testing软件测试网 fg
rC6b|$Gv
TXTFileName=InputBox("请输入你要创建的文件名(不能用中文和纯数字):")51Testing软件测试网w+_$Ixl4}3_O.`
'第二部分:打开并激活记事本
:S6Q3B*t%oP~@"n0
WshShell.Run "notepad"51Testing软件测试网"]E~+y4z)M
Wscrīpt.Sleep 200
;b6Pk`8L+i4o;n0
WshShell.AppActivate "无标题 - 记事本"
$A7OCYh#A5G(K zh?,_t0
'第三部分:用输入的文件名存盘51Testing软件测试网{}x{
P
WshShell.SendKeys "^s"
(b/pP
_sL(t0
Wscrīpt.Sleep 300
fk&Ani0
WshShell.SendKeys TXTFileName51Testing软件测试网1KZ
C'^.PUzX
Wscrīpt.Sleep 30051Testing软件测试网7T9]Q
Pz#r}/F
WshShell.SendKeys "%s"51Testing软件测试网8l#V7q?E8Y0g
Wscrīpt.Sleep AutoSaveTime
I
d)eei#z`#_g0
'第四部分:自动定时存盘
F&E#N+QR|[B'H0
While WshShell.AppActivate (TXTFileName)=True51Testing软件测试网4CEU1X!q,x#LoB9y] }
WshShell.SendKeys "^s"
!W:dN)pw.{.\7~0
Wscrīpt.Sleep AutoSaveTime51Testing软件测试网d$S$t9z-bilAI
Wend51Testing软件测试网YX'Z}q
q4eS&vi
Wscrīpt.Quit51Testing软件测试网 J OUJx$oY
将其保存为记事本.vbs,以后要使用记事本时,都通过双击这个脚本文件来打开。
*pv/s2uz-Vaa0
程序说明:这个脚本的基本思路是定时向记事本发送Ctrl+S这个存盘组合键。51Testing软件测试网:e,o[^K
K6C
第一部分:定义了脚本中需要用到的变量和对象。“AutoSaveTime”变量用来设置自动存盘间隔,单位为毫秒,这里设置为5分钟。“TXTFileName”变量通过输入框取得你要创建的文本文件名称。
aCy(ad2kbF0
第二部分:运行记事本,对于Windows本身提供的程序,比如计算器等,可直接在“WshShell.Run”后输入程序名称,如"calc",对于非系统程序,则可输入完全路径,但要注意使用8.3格式输入,比如“"D:\Progra~1\Tencent\QQ.exe"”。51Testing软件测试网n SK qS!x
第三部分:这里用SendKeys命令执行了这样的操作流程(请注意每个操作之间延时命令的使用):在记事本中按Ctrl+S组合键→弹出保存文件的窗口→输入文件名→按Alt+S组合键进行保存(默认保存在“我的文档”目录)。51Testing软件测试网Pn?6dU@\bz
第四部分:定时存盘的关键,通过“While……Wend”这个当条件为“真”时循环命令,实现自动存盘代码“WshShell.SendKeys "^s"”和定时代码“Wscrīpt.Sleep AutoSaveTime”的重复执行。因为不能让这个定时存盘循环一直执行,退出记事本后,必须自动退出脚本并结束循环,所以设计了一个循环判断条件“WshShell.AppActivate TXTFileName=True”,当记事本运行中时,可以激活记事本窗口,这个条件运行结果为“True”,定时存盘循环一直执行,退出记事本后,脚本无法激活记事本窗口,就会跳出循环,执行“Wend”后面的“Wscrīpt.Quit”退出脚本。
\S_B,z0
例四:关机菜单立刻显身51Testing软件测试网H2h:t.gC7Xx'aX
打开记事本,输入以下命令,并将其保存为1.vbs:
TpG
T:o{D+W0
set WshShell = CreateObject("Wscrīpt.Shell")
"ai0VI*C#qu0
WshShell.SendKeys "^{ESC}u"51Testing软件测试网,owkm,d8r\-D
双击运行它,你会发现关机菜单立刻出现了。51Testing软件测试网v)Rn7^7~b!I(D
将“WshShell.SendKeys "^{ESC}u"”改为“WshShell.SendKeys "^+{ESC}"”,运行一下看看是否打开了任务管理器
$Q2Ow.VoA4l5Gv2B0