ImageVerifierCode 换一换
格式:DOC , 页数:17 ,大小:56KB ,
资源ID:6636268      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-6636268.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(VBS教程(文本版).doc)为本站会员(HR专家)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

VBS教程(文本版).doc

1、VBS 教程(文本版)就像多数计算机教程一样 ,我们从“Hello World!” 程序开始我们的练习。什么?不知道是什么意思?就是说大部分的计算机程序设计教程开篇入门都是编写一个小程序,执行这个程序的结果就是在计算机的屏幕上或者 dos 窗口中显示一行文字:Hello World!好了,我们开始吧。打开你的“记事本”程序,在编辑窗口填写:msgbox “Hello World!“然后用鼠标单击“文件”菜单,单击“保存” ,把“保存在”一栏设为桌面,在“文件名”一栏中填写 kk.vbs,单击“保存”就可以了。然后最小化“ 记事本” 窗口,在桌面上寻找你刚刚保存的 kk.vbs,然后双击。看到弹

2、出的对话框了没有,单击“确定”,对话框消失了。作者:临汾市外事旅游局薛靖澜,转载请注明出处 难看了点,不过确实是你编写的第一个脚本程序。说明之一:上面的操作中,保存位置放在桌面,仅仅是为了执行方便,你保存到其他的地方完全没有问题,只要你知道你保存在什么地方就可以了,什么?是废话,自己保存的当然知道保存在那里了。不,自己保存的文件自己找不到的人我见的多了去了。文件名你可以随意填写,不一定非要写 kk,只要符合Windows 的文件命名规则就可以了,但是扩展名必须是 vbs,什么? 不知道什么是扩展名?就是文件名中“.”后的那部分,简单说,就是 vbs 脚本文件命名时必须是:xxx.vbs,其中

3、xxx 你随意。说明之二:在记事本编辑窗口中写的这行是什么意思?Msgbox 是 VBS 内建的函数,每一个函数都可以完成一定的功能,你只需要按照语法要求,在函数的相应部分填写相应的内容就可以了,这部分内容我们称为参数,当然函数执行的结果我们称为返回值,一个函数可以有返回值也可以没有,可以有参数也可以没有。你不用了解函数是怎么运作的,只要了解这个函数能干什么就行了。Msgbox 语法:msgbox “对话框内容 “, , “对话框的标题“你不妨用记事本打开刚才的文件在编辑窗口中输入:msgbox “Hello World!“ , , “系统提示 “执行一下,看看效果和位置。说明之三:如果执行失

4、败,看看你的标点符号,所有的标点符号必须是在英文状态下输入的。作者:临汾市外事旅游局薛靖澜,转载请注明出处当然,这个脚本实在是太简单了,甚至连最简单的交互都没有,所以你可以把脚本这样修改一下:Dim namename=Inputbox(“请输入你的名字:“,“名称“) Msgbox name, , “您的名字是“ 保存执行一下,看到弹出的对话框了么?填入你的名字,点确定,看到结果了吗?说明之一:第一句是定义变量,dim 是定义变量的语句其格式为:dim 变量 1,变量 2,Vbs 只有一种变量类型,所以不用声明变量类型。系统会自动分辨变量类型。说明之二:inputbox 是 VBS 内建的函数

5、,可以接受输入的内容,其语法格式为:Inputbox(“对话框内容“,“对话框标题“)第二句的意思是接受用户的输入,并把输入结果传递给变量 name。好了,到此脚本基本的输入输出函数都有了,已经可以完成一些比较简单的功能了,你可以编写一个简单的脚本,然后拷贝的“程序”“启动 ”中,然后重新启动计算机看看结果。Vbs 脚本编程简明教程之三Vbs 的基本语法(牢记)VBScript 基础知识一、变量1、所有单引号后面的内容都被解释为注释。2、在 VBScript 中,变量的命名规则遵循标准的命名规则,需要注意的是:在 VBScript 中对变量、方法、函数和对象的引用是不区分大小写的。在申明变量时

6、,要显式地申明一个变量,需要使用关键字 DIm 来告诉 VBScript 你要创建一个变量,并将变量名称跟在其后。申明多个同类型变量,可以用逗号分隔。注意:VBScript 中不允许在申明变量的时候同时给变量赋值。但是允许在一行代码内同时对两个变量进行赋值,中间用冒号分隔。3、你可以使用 OptionExplicit 来告诉宿主变量必须先声明后使用。4、VBScript 在定义时只有一种变量类型, 作者:临汾市外事旅游局薛靖澜,转载请注明出处在实际使用中需要使用类型转换函数来将变量转换成相应的变量类型。Cbool 函数将变量转换成布尔值;Cbyte 函数将变量转换为 0 到 255 之间的整数

7、。Ccur 函数、Cdbl 函数和 Csng 函数将变量转换为浮点数值,前者只精确到小数点后四位,后两者要更加精确,数值的范围也要大的多。Cdate 函数将变量转换为日期值。Cint 函数和 Clng 函数将变量转换为整数,后者的范围比前者要大的多。Cstr 函数将变量转换为字符串。二、数组数组的定义与变量非常类似,只需要在变量后描述这个数组的个数和维数。需要注意的是:数组的下标总是从 0 开始,而以数组定义中数值减一结束。也就是说你以要定义一个有十个数据的数组,将这样书写代码:dImarray(9) ,同样,当你要访问第五个元素时,实际的代码是 array(4)。当然,你可以通过不指定数组的

8、个数和维数来申明动态数组。等到数组的个数和维数固定后,使用关键字 redim 来改变数组。注意,在改变数组的大小时,数组的数据会被破坏,使用关键字 preserve 来保护数据。例如:RedIm 空格 preserve 空格 array 括号个数逗号维数括号三、操作符在 VBScript 运算符中,加减乘除都是我们常用的符号,乘方使用的是 ,取模使用的 Mod。在比较操作符中,等于、小于、大于、小于等于、大于等于都与我们常用的符号是一致的,而不等于是小于和大于连用。逻辑运算符为:和操作AND 非操作NOT 或操作OR;你可以使用操作符 + 和操作符 & 来连接字符串,一般使用& 操作符;另外还

9、有一个比较特殊的操作符 Is 用来比较对象,例如按钮对象,如果对象是同一类型,结果就是真,如果对象不是同一类型,结果就是假。四、条件语句主要有 ifthen 语句和 selectcase 语句两种形式在 ifthen 语句中,其基本形式为:If 条件 then处理条件的语句;Endif基本形式只能对单个条件进行验证,如果有两个条件,则需要在基本形式中添加单行语句 else,如果还有更多的条件需要验证,则需要添加语句Elseif 条件 then处理条件语句在 selectcase 语句中,其基本形式为:Select case 变量 Case 条件值 处理条件语句并对上两句进行重复最后一句应为ca

10、se else处理语句当然不要忘记将条件结束语句 End select 放在最后一行注意:在执行字符串比较时,需要特别注意大小写,一般情况下,我们在比较前,使用 lcase 函数将字符串转换成小写,使用 ucase 函数将字符串转换成大写大写。五、循环控制语句循环控制语句有 fornext 循环、foreach 循环、dowhile 循环、dountil 循环、while 循环五种形式。在使用循环控制语句前,作者:临汾市外事旅游局薛靖澜,转载请注明出处首先要对循环条件进行判断,如果循环次数是有固定次数的,那么使用 Fornext 循环,其结构为:For 计数器变量开始计数值 to 最后计数值执

11、行循环体Next如果是需要对数组或对象集合中的每一个元素进行判断,则需要使用 foreach 循环,其结构为:For each 循环计数变量 in 要查看的对象或数组执行处理语句Next注意:在上述两种循环中随时可以使用 exit for 来退出循环如果你希望在条件满足时执行一段代码则使用 dowhile 语句,结构为:Do while 条件执行循环体Loop如果你希望在条件不满足时执行代码,则使用 dountil 语句,结构为:Do until 条件执行循环体Loop当然,在这两种循环语句中,你可以使用 exit do 来退出循环最后一种循环语句是条件满足时一直执行循环,While 条件执行

12、循环体Wend六、使用过程常用的过程有两种,一种为函数,给调用者返回值,一种为子程序,无返回值,还有一种叫事件的特殊子程序,用的比较少。函数的基本定义方法为:Function 函数名称(参数列表)函数代码函数名称某值 用来返回值end function子程序一些都类似,不过没有返回值注意:尽管在定义子程序的时候,参数列表要加括号,但在调用子程序的时候,参数列表不加括号,括号只在函数中使用。另外,子程序不能在表达式中使用。而函数只能出现在赋值语句的右边,或者表达式中,函数不能直接使用,如果必须直接使用函数,则必须使用 call 语句调用,并取消返回值Vbs 脚本编程简明教程之四如何利用 Vbs

13、运行外部程序? Vbs 只提供了编程的一个基本框架,用户可以使用 Vbs 来定义变量、过程和函数,vbs 也提供了一些内部函数和对象,但是 Vbs 没有提供任何命令来访问 Windows 系统内部的部件,但是值得庆幸的是,Vbs 虽然不能自己完成这些任务,但是它提供了一条极为方便、功能也相当强的命令CreateObject ,这条命令可以访问 windows 系统内安装的所有 com 对象,并且可以调用这些部件中存放的命令。于是问题解决了,比如说,作者:临汾市外事旅游局薛靖澜,转载请注明出处我手头有 1000 个小文本,我首先要对每一个文本的语法进行查错和修改,然后按照预先定义好的规则对这些文

14、本进行排序,最后将这些文本合并成为一个文件。正常情况下,我们需要把打开第一个小文本,然后把它复制到 WORD 中,然后利用里面的除错功能进行除错和修改,然后再导入到 EXCEL 中进行排序,将这个过程重复 1000 遍,然后再将所有得到的文本复制到一个大文本中。实在是太枯燥、工作量太大了。有了 Vbs 和CreateObject,问题得到解决,我只需要找到相应的模块,调用相应的功能就可以了,作为脚本,把一个枯燥的过程重复 1000 次,本就是它的拿手好戏。好了,我们走入正题,从最简单的只启动一个程序开始。WSH 也就是用来解析 Vbs 的宿主,本身包含了几个个常用对象:1、Scripting.

15、FileSystemObject 提供一整套文件系统操作函数2、Scripting.Dictionary 用来返回存放键值对的字典对象3、Wscript.Shell 提供一套读取系统信息的函数,如读写注册表、查找指定文件的路径、读取 DOS环境变量,读取链接中的设置4、Wscript.NetWork 提供网络连接和远程打印机管理的函数。 (其中,所有 Scripting 对象都存放在SCRRUN.DLL 文件中,所有的 Wscript 对象都存放在 WSHOM.ocx 文件中。 )现在我们需要的是第三个对象,好了,让我们先连接一下对象看看,在记事本的编辑窗口中输入:Set objShell =

16、 CreateObject(“Wscript.Shell”)objShell.Run “notepad”同样,保存执行。那么看到了一个什么样的结果呢?在桌面上又打开了一个记事本。说明之一:Set 是 Vbs 指令,凡是将一对象引用赋给变量,就需要使用 set 关键字。那么什么是对象引用呢?凡是字符串、数值、布尔值之外的变量都是对象引用。Objshell 是变量名,可以随意修改。说明之二:反是正确引用的对象,其本身内置有函数和变量,其引用方法为在变量后加“. ”,后紧跟其实现功能的函数就可以了。Objshell.run 的意思就是调用 Wscript.shell 中的运行外部程序的函数run,n

17、otepad 是记事本程序的文件名。当然你也可以改成“calc” ,这是计算器的文件名, winword 是 word的文件名,等等吧,所有可执行文件的文件名都可以。但是需要注意的是,如果你要执行的可执行文件存放的地方不是程序安装的常用路径,一般情况下,需要提供合法的路径名,但是 run 在运行解析时,遇到空格会停止,解决的方法是使用双引号,作者:临汾市外事旅游局薛靖澜,转载请注明出处例如:在我的机器上运行 qq,代码为:objshell.run “C:Program FilesQQ2006QQ.exe“ 注:三个引号好, 我们再进一步,启动两个程序会如何呢?输入如下代码:Set objShe

18、ll = CreateObject(“Wscript.Shell”)objShell.Run “notepad”objShell.Run “calc”执行会如何呢?两个程序基本上同时启动了。如果我们需要先启动 notepad 再启动 calc 将如何呢?很简单在需要顺序执行的代码后加 , , True 参数就可以了。 好了输入代码:Set objShell = CreateObject(“Wscript.Shell”)objShell.Run “notepad” ,trueobjShell.Run “calc”看看执行的结果怎么样吧!总结:run 函数有三个参数,第一个参数是你要执行的程序的路

19、径,第二个程序是窗口的形式,0 是在后台运行;1 表示正常运行; 2 表示激活程序并且显示为最小化; 3 表示激活程序并且显示为最大化;一共有 10 个这样的参数我只列出了 4 个最常用的。 第三个参数是表示这个脚本是等待还是继续执行,如果设为了 true,脚本就会等待调用的程序退出后再向后执行。 其实,run 做为函数,前面还有一个接受返回值的变量,一般来说如果返回为 0,表示成功执行,如果不为 0,则这个返回值就是错误代码,可以通过这个代码找出相应的错误Vbs 脚本编程简明教程之五 错误处理引发错误的原因有很多,例如用户输入了错误类型的值,或者脚本找不到必需的文件、目录或者驱动器,我们可以

20、使用循环技术来处理错误,但是 VBS 本身也提供了一些基本技术来进行错误的检测和处理。1、最常见的错误是运行时错误,也就是说错误在脚本正在运行的时候发生,是脚本试图进行非法操作的结果。例如零被作为除数。在 vbs 中,任何运行时错误都是致命的,此时,脚本将停止运行,并在屏幕上显示一个错误消息。你可以在脚本的开头添加On Error Resume Next 这行语句可以告诉 vbs 在运行时跳过发生错误的语句,紧接着执行跟在它后面的语句。发生错误时,作者:临汾市外事旅游局薛靖澜,转载请注明出处该语句将会把相关的错误号、错误描述和相关源代码压入错误堆栈。2、虽然 On Error Resume N

21、ext 语句可以防止 vbs 脚本在发生错误时停止运行,但是它并不能真正处理错误,要处理错误,你需要在脚本中增加一些语句,用来检查错误条件并在错误发生时处理它。vbscript 提供了一个对象 err 对象,他有两个方法 clear,raise,5 个属性:description,helpcontext,helpfile,number,sourceerr 对象不用引用实例,可以直接使用,例如: on error resume next a=11 b=0 c=a/b if err.number0 then wscript.echo err.number & err.description & e

22、rr.source end if Vbs 脚本编程简明教程之六 修改注册表Vbs 中修改注册表的语句主要有: 1、读注册表的关键词和值: 可以通过把关键词的完整路径传递给 wshshell 对象的 regread 方法。例如:set ws=wscript.createobject(“wscript.shell“) v=ws.regread(“HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunnwiz“) wscript.echo v 2、写注册表使用 wshshell 对象的 regwrite 方法。例子: path=“HKE

23、Y_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun“ set ws=wscript.createobject(“wscript.shell“) t=ws.regwrite(path & “jj“,“hello“) 这样就把HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunjj 这个键值改成了 hello.不过要注意:这个键值一定要预先存在。 作者:临汾市外事旅游局薛靖澜,转载请注明出处如果要创建一个新的关键词,同样也是用这个方法。 path=“HKEY_LOCAL_

24、MACHINESOFTWAREMicrosoftWindowsCurrentVersionrunsssa2000love“ set ws=wscript.createobject(“wscript.shell“) val=ws.regwrite(path,“nenboy“) val=ws.regread(path) wscript.echo val 删除关键字和值 使用 regdelete 方法,把完整的路径传递给 regdelete 就可以了 例如 val=ws.regdel(path) 注意,如果要删除关键词的值的话 一定要在路径最后加上“”,如果不加斜线,就会删除整个关键词。Vbs 脚本

25、编程简明教程之七 FSO 的常见对象和方法文件系统是所有操作系统最重要的部分之一,脚本经常会需要对文件及文件夹进行访问和管理,在 Vbs中对桌面和文件系统进行访问的顶级对象是 FileSystemObject(FSO),这个对象特别复杂,是 vbs 进行文件操作的核心。此节内容应了如指掌。FSO 包含的常见对象有:Drive 对象:包含储存设备的信息,作者:临汾市外事旅游局薛靖澜,转载请注明出处包括硬盘、光驱、ram 盘、网络驱动器Drives 集合:提供一个物理和逻辑驱动器的列表 File 对象:检查和处理文件 Files 集合:提供一个文件夹中的文件列表 Folder 对象:检查和处理文件

26、夹 Folders 集合:提供文件夹中子文件夹的列表 Textstream 对象:读写文本文件 FSO 的常见方法BulidPath:把文件路径信息添加到现有的文件路径上CopyFile:复制文件CopyFolder:复制文件夹CreateFolder:创建文件夹CreateTextFile:创建文本并返回一个 TextStream 对象DeleteFile:删除文件DeleteFolder:删除文件夹及其中所有内容DriveExits:确定驱动器是否存在FileExits:确定一个文件是否存在FolderExists:确定某文件夹是否存在GetAbsolutePathName:返回一个文件夹

27、或文件的绝对路径 GetBaseName:返回一个文件或文件夹的基本路径 GetDrive:返回一个 dreve 对象 GetDriveName:返回一个驱动器的名字 GetExtensionName:返回扩展名 GetFile:返回一个 file 对象 GetFileName:返回文件夹中文件名称 GetFolder:返回一个文件夹对象GetParentFolderName:返回一个文件夹的父文件夹 GetSpecialFolder:返回指向一个特殊文件夹的对象指针 GetTempName:返回一个可以被 createtextfile 使用的随机产生的文件或文件夹的名称 MoveFile:移

28、动文件MoveFolder:移动文件夹 作者:临汾市外事旅游局薛靖澜,转载请注明出处OpenTextFile:打开一个存在的文件并返回一个 TextStream 对象Vbs 脚本编程简明教程之八 FSO 中文件夹的基本操作1、使用 fso 由于 fso 不是 wsh 的一部分,所以我们需要建立他的模型例如 set fs=wscript.createobject(“scripting.filesystemobject”) 这样就建立了 fso 的模型。如果要释放的话也很简单,set fs=nothing 2、使用文件夹 在创建前,作者:临汾市外事旅游局薛靖澜,转载请注明出处我们一般需要检查该文件

29、夹是否存在例如:dim fs,s /定义 fs、s 两个变量set fs=wscript.createobject(“scripting.filesystemobject”) /fs 为 FSO 实例if (fs.folderexists(“c:temp”) then /判断 c:temp 文件夹是否存在s=”is available” else s=”not exist” set foldr=fs.createfolder(“c:temp”) /不存在则建立end if删除:set fs=wscript.createobject(“scripting.filesystemobject”) f

30、s.deletefolder(“c:windows”) 拷贝: set fs=wscript.createobject(“scripting.filesystemobject”) fs.copyfolder “c:data” “d:data” 注意:如果 c:data 和 d:data 都存在,脚本会出错,复制也就会停止,如果要强制覆盖,使用fs.copyfolder “c:data” “d:data”,true 移动:set fs=wscript.createobject(“scripting.filesystemobject”) fs.movefolder “c:data” “d:data

31、” 我们可以使用统配符,来方便操作: 例如, fs.movefolder :c:datate*” , “d:working” 注意:在目的路径最后没有使用“” 也就是说我没有这样写: fs.movefolder c:datate*” , “d:working” 这样写的话,如果 d:working 目录不存在,windows 就不会为我们自动创建这个目录。 注意:上面我们所举的例子都是在利用 fso 提供的方法,如果使用 folder 对象也完全是可以的:set fs= wscript.createobject(“scripting.filesystemobject”) set f=fs.ge

32、tfolder(“c:data”) f.delete/删除文件夹 c:data。如果有子目录,也会被删除 f.copy “d:working”,true/拷贝到 d:working f.move “d:temp”/移动到 d:temp 3、特殊文件夹 一般指的就是系统文件夹:windowssystem32 , 临时文件夹,windows 文件夹,在前几篇的时候,作者:临汾市外事旅游局薛靖澜,转载请注明出处我们提过一下:例如set fs=wscript.createobject(“scripting.filesystemobject”) set wshshell=wscript.createob

33、ject(“wscript.shell”) osdir=wshshell.expandenvironmentstrings(“%systemroot%”) set f =fs.getfolder(osdir) wscript.echo f 当然,还有简单的方法 那就是使用 getspecialfolder() 这个方法使用 3 种值: 0 表示 windows 文件夹,相关常量是 windowsfolder 1 系统文件夹,相关常量是 systemfolder 2 临时目录,相关常量 temporaryfolder 例如:set fs=wscript.createobject(“scripti

34、ng.filesystemobject”) set wfolder=fs.getspecialfolder(0) 返回 windows 目录 set wfolder=fs.getspecialfolder(1) 返回 system32 set wfolder=fs.getspecialfolder(2)返回临时目录Vbs 脚本编程简明教程之九 妙用 SendKeys 简化重复操作每次开机的时候,你想自动登陆你的 QQ 或者网志吗?巧妙使用 VBS 中的 SendKeys 命令(这个命令的作用就是模拟键盘操作,将一个或多个按键指令发送到指定 Windows 窗口来控制应用程序运行) ,可以极大的

35、方便我们的常用操作。其使用格式为:Object.SendKeys string 其中:Object:为 WshShell 对象,即脚本的第一行为:Set WshShell=WScript.CreateObject(“WScript.Shell“)将 Object 替换为 WshShell“string”:表示要发送的按键指令字符串,需要放在英文双引号中。它包含如下内容:作者:临汾市外事旅游局薛靖澜,转载请注明出处1基本键:一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母“x”,使用“WshShell.SendKeys “x“”即可。当然,也可直接发送多个按键指令,只需

36、要将按键字符按顺序排列在一起即可,例如,要发送按键“cfan”,可以使用“WshShell.SendKeys “cfan“”。2特殊功能键:对于需要与 Shift、Ctrl、Alt 三个控制键组合的按键,SendKeys 使用特殊字符来表示:Shift +;Ctrl ;Alt %如要发送的组合按键是同时按下 CtrlE,需要用“WshShell.SendKeys “e“”表示,如果要发送的组合按键是按住 Ctrl 键的同时按下 E 与 C 两个键,这时应使用小括号把字母键括起来,书写格式为“WshShell.SendKeys “(ec)“”,这里要注意它与“WshShell.SendKeys

37、“ec“”的区别,后者表示组合按键是同时按住 Ctrl 和 E 键,然后松开 Ctrl 键,单独按下“C”字母键。由于“+”、 “”这些字符用来表示特殊的控制按键了,如何表示这些按键呢?只要用大括号括住这些字符即可。例如,要发送加号“+”,可使用“WshShell.SendKeys “+“”。另外对于一些不会生成字符的控制功能按键,也同样需要使用大括号括起来按键的名称,例如要发送回车键,需要用“WshShell.SendKeys “ENTER“”表示,发送向下的方向键用“WshShell.SendKeys “DOWN“”表示。如果需要发送多个重复的单字母按键,不必重复输入该字母,SendKey

38、s 允许使用简化格式进行描述,使用格式为“按键 数字”。例如要发送 10 个字母“x”,则输入“WshShell.SendKeys “x 10“”即可。例一:WshShell.SendKeys “ESCu“作者:临汾市外事旅游局薛靖澜,转载请注明出处代码的含义为:按下 CtrlEsc 组合键(相当于按 Win 键)打开“开始” 菜单,接着按 U 键打开“关机”菜单。例二:让 VBS 脚本自动在记事本中输入一行文字“hello, welcome to cfan”。Dim WshShellSet WshShell=WScript.CreateObject(“WScript.Shell“)WshSh

39、ell.Run “notepad“WScript.Sleep 2000 /本行的含义为是脚本暂停 2 秒,给 notepad 一个打开的时间,有时时间太短可能导致后面的字符无法进入编辑区WshShell.AppActivate “无标题 - 记事本“/AppActivate 为寻找可执行程序的标题框, ”无标题记事本” 内容你的自己打开看一下WshShell.SendKeys “hello, welcome to cfan“作业 1:让脚本自动输入下面两段小短句This is the most wonderful day of my lifebecause Im here with you n

40、ow作业 2:让脚本在输入短句后自动关闭记事本,并保存文件名为“test”,注意关闭记事本可以直接使用组合按键 AltF4 来实现例三:制作能自动定时存盘的记事本我们最常用的记事本没有 Word、WPS 那样的自动定时存盘功能,其实利用 VBS 脚本再加上 SendKeys命令,就能弥补这个遗憾。打开记事本,输入以下内容(为容易描述和分析,把代码分为四个部分):第一部分:定义变量和对象Dim WshSh作者:临汾市外事旅游局薛靖澜,转载请注明出处ell, AutoSaveTime, TXTFileNameAutoSaveTime=300000Set WshShell=WScript.Creat

41、eObject(“WScript.Shell“)TXTFileName=InputBox(“请输入你要创建的文件名 (不能用中文和纯数字):“)第二部分:打开并激活记事本WshShell.Run “notepad“WScript.Sleep 200WshShell.AppActivate “无标题 - 记事本“第三部分:用输入的文件名存盘WshShell.SendKeys “s“WScript.Sleep 300WshShell.SendKeys TXTFileNameWScript.Sleep 300WshShell.SendKeys “%s“WScript.Sleep AutoSaveTi

42、me第四部分:自动定时存盘While WshShell.AppActivate (TXTFileName)=TrueWshShell.SendKeys “s“WScript.Sleep AutoSaveTimeWendWScript.Quit将其保存为记事本.vbs,以后要使用记事本时,都通过双击这个脚本文件来打开。程序说明:这个脚本的基本思路是定时向记事本发送 CtrlS 这个存盘组合键。第一部分:定义了脚本中需要用到的变量和对象。 “AutoSaveTime”变量用来设置自动存盘间隔,单位为毫秒,这里设置为 5 分钟。 “TXTFileName”变量通过输入框取得你要创建的文本文件名称。

43、作者:临汾市外事旅游局薛靖澜,转载请注明出处第二部分:运行记事本,对于 Windows 本身提供的程序,比如计算器等,可直接在“WshShell.Run”后输入程序名称,如“calc“ ,对于非系统程序,则可输入完全路径,但要注意使用 8.3 格式输入,比如“D:Progra1TencentQQ.exe“”。第三部分:这里用 SendKeys 命令执行了这样的操作流程(请注意每个操作之间延时命令的使用):在记事本中按 CtrlS 组合键弹出保存文件的窗口输入文件名按 AltS 组合键进行保存(默认保存在“我的文档” 目录) 。第四部分:定时存盘的关键,通过“WhileWend”这个当条件为“真

44、” 时循环命令,实现自动存盘代码“WshShell.SendKeys “s“”和定时代码 “WScript.Sleep AutoSaveTime”的重复执行。因为不能让这个定时存盘循环一直执行,退出记事本后,必须自动退出脚本并结束循环,所以设计了一个循环判断条件“WshShell.AppActivate TXTFileName=True”,当记事本运行中时,可以激活记事本窗口,这个条件运行结果为“True”,定时存盘循环一直执行,退出记事本后,脚本无法激活记事本窗口,就会跳出循环,执行“Wend”后面的 “WScript.Quit”退出脚本。例四:快速登陆 QQ 软件。假设 QQ 号码是:10001 ,密码是:123456,隐身登陆:set ws=wscript.createobject(“wscript.shell“) ws.run “C:Progra1TencentQQQQ.exe“,0wscript.Sleep 2000ws.AppActivate “QQ 用户登录“ ws.SendKeys “7015247“wscript.Sleep 200ws.SendKeys “TAB“ws.SendKeys “*“wscript.Sleep 200ws.SendKeys “ENTER“

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报