vbs教程(5)

2020-05-19 08:42

else s=”not exist”

set foldr=fs.createfolder(“c:/temp”) //不存在则建立

end if 拷贝:

注意:如果c:/data 和d:/data都存在,脚本会出错,复制也就会停止,如果要强制覆盖,使用fs.copyfolder

“c:/data” “d:/data”,true

移动:

set fs=wscript.createobject(“scripting.filesystemobject”)

fs.movefolder “c:/data” “d:/data”

我们可以使用统配符,来方便操作: 例如, fs.movefolder :c:/data/te*” , “d:/working” 注意:在目的路径最后没有使用“/” 也就是说我没有这样写:

fs.movefolder c:/data/te*” , “d:/working/”

这样写的话,如果d:/working 目录不存在,windows就不会为我们自动创建这个目录。

注意:上面我们所举的例子都是在利用fso提供的方法,如果使用folder对象也完全是可以的:

set fs= wscript.createobject(“scripting.filesystemobject”)

set f=fs.getfolder(“c:/data”)

f.delete //删除文件夹c:/data。如果有子目录,也会被删除

f.copy “d:/working”,true //拷贝到d:/working

f.move “d:/temp” //移动到d:/temp

一般指的就是系统文件夹:/windows/system32,

临时文件夹,windows文件夹,在前几篇的时候,我们提过一下:例如

set fs=wscript.createobject(“scripting.filesystemobject”) set wshshell=wscript.createobject(“wscript.shell”) osdir=wshshell.expandenvironmentstrings(“%systemroot%”)

set f =fs.getfolder(osdir)

wscript.echo f

这个方法使用3种值:

0 表示windows文件夹,相关常量是windowsfolder

1 系统文件夹,相关常量是systemfolder 2 临时目录,相关常量temporaryfolder

例如:

set fs=wscript.createobject(“scripting.filesystemobject”) set wfolder=fs.getspecialfolder(0) ?返回windows目录 set wfolder=fs.getspecialfolder(1) ?返回system32/ set wfolder=fs.getspecialfolder(2)′返回临时目录

当然,还有简单的方法 那就是使用getspecialfolder() 3、特殊文件夹

set fs=wscript.createobject(“scripting.filesystemobject”)

fs.copyfolder “c:/data” “d:/data”

set fs=wscript.createobject(“scripting.filesystemobject”)

fs.deletefolder(“c:/windows”)

删除:

◎Vbs脚本编程简明教程之九—妙用SendKeys简化重复操作

每次开机的时候,你想自动登陆你的QQ或者博客吗?巧妙使用VBS中的SendKeys命令(这个命令的作用就是模拟键盘操作,将一个或多个按键指令发送到指定Windows窗口来控制应用程序运行),可以极大

的方便我们的常用操作。其使用格式为:

Object.SendKeys string其中:

Object:为WshShell对象,即脚本的第一行为: Set WshShell=WScript.CreateObject(\

将Object替换为WshShell

“string”:表示要发送的按键指令字符串,需要放在英文双引号中。它包含如下内容:

1.基本键:一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母“x”,使

用“WshShell.SendKeys

\即可。当然,也可直接发送多个按键指令,只需要将按键字符按顺序排列在一起即可,例如,要发送按

键“cfan”,可以使用 “WshShell.SendKeys \。

2.特殊功能键:对于需要与Shift、Ctrl、Alt三个控制键组合的按键,SendKeys使用特殊字符来表示:

Shift — +;Ctrl — ^;Alt — %

如要发送的组合按键是同时按下Ctrl+E,需要用WshShell.SendKeys

\表示,如果要发送的组合按键是按住Ctrl键的同时按下E与C两个键,这时应使用小括号把字母键括

起来,书写格式为“WshShell.SendKeys \,这里要注意它与“WshShell.SendKeys

\的区别,后者表示组合按键是同时按住Ctrl和E键,然后松开Ctrl键,单独按下“C”字母键。

由于“+”、“^”这些字符用来表示特殊的控制按键了,如何表示这些按键呢?只要用大括号括住这些字符即可。

例如,要发送加号“+”,可使用“WshShell.SendKeys

\。另外对于一些不会生成字符的控制功能按键,也同样需要使用大括号括起来按键的名称,例如要发

送回车键,需要用“WshShell.SendKeys \表示,发送向下的方向键用 “WshShell.SendKeys \表示。

如果需要发送多个重复的单字母按键,不必重复输入该字母,SendKeys允许使用简化格式进行描述,使

用格式为“{按键

数字}”。例如要发送10个字母“x”,则输入“WshShell.SendKeys \即可。

例一:WshShell.SendKeys \

代码的含义为:按下Ctrl+Esc组合键(相当于按Win键)打开“开始”菜单,接着按U键打开“关机”菜单。

例二:让VBS脚本自动在记事本中输入一行文字“hello, welcome to cfan”。

Dim WshShell

Set WshShell=WScript.CreateObject(\

WshShell.Run \WScript.Sleep 2000

//本行的含义为是脚本暂停2秒,给notepad一个打开的时间,有时时间太短可能导致后面的字符无法进

入编辑区

WshShell.AppActivate \无标题 - 记事本

\为寻找可执行程序的标题框,”无标题-记事本”内容你的自己打开看一下

WshShell.SendKeys \作业1:让脚本自动输入下面两段小短句 This is the most wonderful day of my life

because I′m here with you now

作业2:让脚本在输入短句后自动关闭记事本,并保存文件名为“test”,注意关闭记事本可以直接使用组合

按键Alt+F4来实现。

例三:制作能自动定时存盘的记事本

我们最常用的记事本没有Word、WPS那样的自动定时存盘功能,其实利用VBS脚本再加上SendKeys命令,就能弥补这个遗憾。打开记事本,输入以下内容(为容易描述和分析,把代码分为四个部分):

′第一部分:定义变量和对象

Dim WshShell, AutoSaveTime, TXTFileName

AutoSaveTime=300000

Set WshShell=WScript.CreateObject(\

TXTFileName=InputBox(\请输入你要创建的文件名(不能用中文和纯数字):\

′第二部分:打开并激活记事本 WshShell.Run \WScript.Sleep 200

WshShell.AppActivate \无标题 - 记事本\

′第三部分:用输入的文件名存盘

WshShell.SendKeys \WScript.Sleep 300

WshShell.SendKeys TXTFileName

WScript.Sleep 300 WshShell.SendKeys \WScript.Sleep AutoSaveTime ′第四部分:自动定时存盘

While WshShell.AppActivate (TXTFileName)=True

WshShell.SendKeys \WScript.Sleep AutoSaveTime

Wend


vbs教程(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:管理学原理·2017秋华南理工大学管理学原理平时作业答案解析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: