VBS中常用的几个对象

上一篇 / 下一篇  2013-12-26 09:14:11 / 个人分类:VBScript

WSH也就是用来解析Vbs的宿主,本身包含了几个个常用对象:

 

1Scripting.FileSystemObject>提供一整套文件系统操作函数

 

2Scripting.Dictionary>用来返回存放键值对的字典对象

 

3Wscript.Shell>提供一套读取系统信息的函数,如读写注册表、查找指定文件的路径、读取DOS环境变量,读取链接中的设置

 

4Wscript.NetWork>提供网络连接和远程打印机管理的函数。(其中,所有Scripting对象都存放在SCRRUN.DLL文件中,所有的Wscript对象都存放在WSHOM.ocx文件中。)

 

5、巧妙使用VBS中的SendKeys命令(这个命令的作用就是模拟键盘操作,将一个或多个按键指令发送到指定Windows窗口来控制应用程序运行),可以极大的方便我们的常用操作。其使用格式为:Object.SendKeys string其中:

  

SetObject=WScript.CreateObject("WScript.Shell")

 

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

 

1.基本键:一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母“x”,使用“WshShell.SendKeys"x"”即可。当然,也可直接发送多个按键指令,只需要将按键字符按顺序排列在一起即可,例如,要发送按键“cfan”,可以使用

 

WshShell.SendKeys "cfan"”。

 

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

 

如要发送的组合按键是同时按下CtrlE,需要用WshShell.SendKeys"^e"”表示,如果要发送的组合按键是按住Ctrl键的同时按下EC两个键,这时应使用小括号把字母键括起来,书写格式为“WshShell.SendKeys"^(ec)"”,这里要注意它与“WshShell.SendKeys"^ec"”的区别,后者表示组合按键是同时按住CtrlE键,然后松开Ctrl键,单独按下“C”字母键。

由于“+”、“^”这些字符用来表示特殊的控制按键了,如何表示这些按键呢?只要用大括号括住这些字符即可。例如,要发送加号“+”,可使用“WshShell.SendKeys"{+}"”。另外对于一些不会生成字符的控制功能按键,也同样需要使用大括号括起来按键的名称,例如要发送回车键,需要用“WshShell.SendKeys"{ENTER}"”表示,发送向下的方向键用“WshShell.SendKeys "{DOWN}"”表示。

 

如果需要发送多个重复的单字母按键,不必重复输入该字母,SendKeys允许使用简化格式进行描述,使用格式为“{按键数字}”。例如要发送10个字母“x”,则输入“WshShell.SendKeys "{x 10}"”即可。

 

实例:

Dim wshshell
Set wshshell=CreateObject("WScript.Shell")
wshshell.Run "notepad"
WScript.Sleep 2000
wshshell.AppActivate "无标题-记事本"
wshshell.SendKeys "hello,welcome!This is the most wonderful day of my life!"
wshshell.SendKeys "^s"
WScript.Sleep 2000
wshshell.AppActivate "另存为"
wshshell.SendKeys "bb"
WScript.Sleep 3000
wshshell.SendKeys "%S"
WScript.Sleep 5000
wshshell.SendKeys "%{F4}"


TAG: vbs VBS

 

评分:0

我来说两句

ftdtest

ftdtest

For The Dream 以此记录一个测试界的Green hand 的成长历程

日历

« 2024-05-11  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 29995
  • 日志数: 37
  • 书签数: 14
  • 建立时间: 2013-10-13
  • 更新时间: 2014-02-07

RSS订阅

Open Toolbar