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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

VBS脚本教程二上下.docx

1、VBS脚本教程二上下VBS脚本教程二(上)Vbs脚本编程简明教程之九妙用SendKeys简化重复操作每次开机的时候,你想自动登陆你的QQ或者网志吗?巧妙使用VBS中的SendKeys命令(这个命令的作用就是模拟键盘操作,将一个或多个按键指令发送到指定Windows窗口来控制应用程序运行),可以极大的方便我们的常用操作。其使用格式为:Object.SendKeys string其中:Object:为WshShell对象,即脚本的第一行为:Set WshShell=WScript.CreateObject(WScript.Shell)将Object替换为WshShell“string”:表示要发送

2、的按键指令字符串,需要放在英文双引号中。它包含如下内容:.1基本键:一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母“x”,使用“WshShell.SendKeys x”即可。当然,也可直接发送多个按键指令,只需要将按键字符按顺序排列在一起即可,例如,要发送按键“cfan”,可以使用“WshShell.SendKeys cfan”。2特殊功能键:对于需要与Shift、Ctrl、Alt三个控制键组合的按键,SendKeys使用特殊字符来表示:Shift +;Ctrl ;Alt %如要发送的组合按键是同时按下CtrlE,需要用“WshShell.SendKeys e”表示

3、,如果要发送的组合按键是按住Ctrl键的同时按下E与C两个键,这时应使用小括号把字母键括起来,书写格式为“WshShell.SendKeys (ec)”,这里要注意它与“WshShell.SendKeys ec”的区别,后者表示组合按键是同时按住Ctrl和E键,然后松开Ctrl键,单独按下“C”字母键。由于“+”、“”这些字符用来表示特殊的控制按键了,如何表示这些按键呢?只要用大括号括住这些字符即可。例如,要发送加号“+”,可使用“WshShell.SendKeys +”。另外对于一些不会生成字符的控制功能按键,也同样需要使用大括号括起来按键的名称,例如要发送回车键,需要用“WshShell.

4、SendKeys ENTER”表示,发送向下的方向键用“WshShell.SendKeys DOWN”表示。如果需要发送多个重复的单字母按键,不必重复输入该字母,SendKeys允许使用简化格式进行描述,使用格式为“按键数字”。例如要发送10个字母“x”,则输入“WshShell.SendKeys x 10”即可。例一:WshShell.SendKeys ESCu.代码的含义为:按下CtrlEsc组合键(相当于按Win键)打开“开始”菜单,接着按U键打开“关机”菜单。例二:让VBS脚本自动在记事本中输入一行文字“hello, welcome to cfan”。Dim WshShellSet W

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

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

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

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

9、ows本身提供的程序,比如计算器等,可直接在“WshShell.Run”后输入程序名称,如calc,对于非系统程序,则可输入完全路径,但要注意使用8.3格式输入,比如“D:Progra1TencentQQ.exe”。第三部分:这里用SendKeys命令执行了这样的操作流程(请注意每个操作之间延时命令的使用):在记事本中按CtrlS组合键弹出保存文件的窗口输入文件名按AltS组合键进行保存(默认保存在“我的文档”目录)。第四部分:定时存盘的关键,通过“WhileWend”这个当条件为“真”时循环命令,实现自动存盘代码“WshShell.SendKeys s”和定时代码“WScript.Sleep

10、 AutoSaveTime”的重复执行。因为不能让这个定时存盘循环一直执行,退出记事本后,必须自动退出脚本并结束循环,所以设计了一个循环判断条件“WshShell.AppActivate TXTFileName=True”,当记事本运行中时,可以激活记事本窗口,这个条件运行结果为“True”,定时存盘循环一直执行,退出记事本后,脚本无法激活记事本窗口,就会跳出循环,执行“Wend”后面的“WScript.Quit”退出脚本。例四:快速登陆QQ软件。假设QQ号码是:10001,密码是:123456,隐身登陆:set ws=wscript.createobject(wscript.shell)ws

11、.run C:Progra1TencentQQQQ.exe,0wscript.Sleep 2000ws.AppActivate QQ用户登录ws.SendKeys 7015247wscript.Sleep 200ws.SendKeys TABws.SendKeys *wscript.Sleep 200ws.SendKeys ENTERVBS脚本教程二(下)例五:关机菜单立刻显身打开记事本,输入以下命令,并将其保存为1.vbs:set WshShell = CreateObject(WScript.Shell)WshShell.SendKeys ESCu双击运行它,你会发现关机菜单立刻出现了。将

12、“WshShell.SendKeys ESCu”改为“WshShell.SendKeys +ESC”,运行一下看看是否打开了任务管理器妙用SendKeys自动上网并登陆网志将下面的脚本复制到一个文本文件中,并将其文件名命名为:自动登陆.vbs,然后将拨号软件及本脚本一起复制到程序启动项中,就可以实现自动拨号上网,并登陆到网志上。代码如下:Set wshshell=CreateObject(wscript.shell)wshshell.AppActivate 连接 MAE-301U 拨号连接wscript.Sleep 20000wshshell.SendKeys enterwshshell.Ru

13、n iexploreWScript.Sleep 2000wshshell.AppActivate hao123网址之家-实用网址,搜索大全,尽在 - Microsoft Internet Explorer 引号中的内容修改为你的浏览器打开后标题栏中的内容wshshell.SendKeys %dwshshell.SendKeys wshshell.SendKeys enterWScript.Sleep 2000wshshell.SendKeys 此处修改为网志帐号wshshell.SendKeys tabwshshell.SendKeys 此处修改为网志密码wshshell.SendKeys e

14、nterwshshell.SendKeys %dVbs脚本编程简明教程之十 Vbs脚本编程常用的编辑器1、VBSEDit汉化版2、primalscript汉化版,可以对30多种脚本进行编辑Vbs脚本编程简明教程之十一 FSO中文件的基本操作一、文件属性:在windows中,文件的属性一般用数字来表示:0代表normal,即普通文件未设置任何属性。 1代表只读文件。2代表隐藏文件。 4代表系统文件。 16代表文件夹或目录。32代表存档文件。 1024代表链接或快捷方式。例如:set fs=wscript.createobject(“scripting.filesystemobject”)set

15、f=fs.getfile(“d:index.txt”)msgbox f.Attributesattributes函数的作用是显示文件属性需要说明的是:msgbox显示的结果往往不是上面说明的数字,而是有关属性代表数字的和。作者:临汾市外事旅游局薛靖澜,转载请注明出处二、创建文件:object.createtextfile方法,注意创建前一般需要检查文件是否存在。例如:set fso=wscript.createobject(“scripting.filesystemobject”)if fso.fileexists(“c:kk.txt”) thenmsgbox “文件已存在”elseset f

16、=fso.createtextfile(“c:kk.txt”)end if如需要强制覆盖已存在的文件,则在文件名后加true参数。三、复制、移动、删除文件:使用copyfile方法、movefile方法、deletefile方法。例如:set fso=wscript.createobject(“scripting.filesystemobject”)fso.copyfile “c:kk.txt”,”d:1kk.txt”,true /如上文说述,true代表强制覆盖fso.movefile “c:kk.txt”, “d:”/移动文件fso.deletefile “c:kk.txt”/删除文件四、

17、文件的读写:1、打开文件:使用opentextfile方法如:set ts=fso.opentextfile(“c:kk.txt”,1,true)说明:第二个参数为访问模式1为只读、2写入、8为追加第三个参数指定如文件不存在则创建。2、读取文件:read(x)读x个字符;readline读一行;readall全部读取如:set ffile=fso.opentextfile(“c:kk.txt”,1,true)value=ffile.read(20)line=ffile.readlinecontents=ffile.readall3、常见的指针变量:atendofstream属性:当处于文件结尾

18、的时候这个属性返回true。一般用循环检测是否到达文件末尾。例如:do while ffile.atendofstreamtrueffile.read(10)loopatendofline属性:如果已经到了行末尾,这个属性返回true。Column属性(当前字符位置的列号)和line属性(文件当前行号):在打开一个文件后,行和列指针都被设置为1。4、在文件中跳行:skip(x)跳过x个字符;skipline跳过一行5、在文件中写入字符:可以用2写入和8追加的方式来写入其方法有:write(x)写入x字符串;writeline(x)写入x代表的一行writeblanklines(n) 写入n个空

19、行注意:最后一定要使用close方法关闭文件。作者:临汾市外事旅游局薛靖澜,转载请注明出处读文件后一定要关闭,才能以写的方式打开。Vbs脚本编程简明教程之十二使用系统对话框在VBS脚本设计中,如果能使用windows提供的系统对话框,可以简化脚本的使用难度,使脚本人性化许多,很少有人使用,但VBS并非不能实现这样的功能,方法当然还是利用COM对象。1、SAFRCFileDlg.FileSave对象:属性有:FileName 指定默认文件名;FileType 指定文件扩展名;OpenFileSaveDlg 显示文件保存框体方法。2、SAFRCFileDlg.FileOpen 对象:FileNam

20、e 默认文件名属性;OpenFileOpenDlg 显示打开文件框体方法。3、UserAccounts.CommonDialog对象:Filter 扩展名属性(vbs File|*.vbs|All Files|*.*);FilterIndex 指定InitialDir 指定默认的文件夹FileName 指定的文件名Flags 对话框的类型Showopen方法:很简单,ok,让我们来举两个简单的例子:例一:保存文件Set objDialog = CreateObject(SAFRCFileDlg.FileSave)Set objFSO = CreateObject(Scripting.FileS

21、ystemObject)objDialog.FileName = testobjDialog.FileType = .txtintReturn = objDialog.OpenFileSaveDlgIf intReturn ThenobjFSO.CreateTextFile(objDialog.FileName & objdialog.filetype)ElseWscript.QuitEnd If注意:1、SAFRCFileDlg.FileSave对象仅仅是提供了一个方便用户选择的界面,本身并没有保存文件的功能,保存文件还需要使用FSO对象来完成。2、用FileType属性来指定默认的文件类型

22、。3、在调用OpenFileSaveDlg方法时,最好把返回值保存到一变量中,用它可以判断用户按下的是确定还是取消。例二:.打开文件set objFile = CreateObject(SAFRCFileDlg.FileOpen)intRet = objFile.OpenFileOpenDlgif intret thenmsgbox “文件打开成功!文件名为:” & objFile.filenameelsewscript.quitend if例三:比较复杂的打开文件对话框Set objDialog = CreateObject(UserAccounts.CommonDialog)objDial

23、og.Filter = vbs File|*.vbsobjDialog.InitialDir = c:tfile=objDialog.ShowOpenif tfile thenstrLoadFile = objDialog.FileNamemsgbox strLoadFileelsewscript.quitend if说明:在脚本中加入 objDialog.Flags = &H020 看看会出现什么结果。Vbs脚本编程简明教程之十三WMI基础WMI即Windows 管理规范,是用户管理本地和远程计算机的一种模型。通过它可以访问、配置、管理和监视几乎所有的 Windows 资源。WMI的语法十分

24、简单,基本上常见的命名空间、对象等用几乎一模一样。它对应的是Windows里的WMI服务(winmgmt)。一、WMI的起源几年前,几家资深的计算机公司由于系统管理领域缺少标准,委托DMTF启动了CIM(通用信息模型)项目,理想的CIM是一种不受限制于任何特定实现环境的管理工具。WMI是CIM的微软实现,它有很多类是从CIM中派生出来的。二、WMI的命名空间那么命名空间是做什么作用的呢?我简单这样说,在同一段代码中,如果有两个变量或函数的名字完全相同,就会出现冲突。命名空间就是为解决变量、函数的命名冲突而服务的。解决的办法就是将你的变量定义在一个不同名字的命名空间中。就好像财政局有个张三,公安

25、局也有个张三,但我们清楚,就是因为他们分属不同的单位。有些地方可能不太准确,但大致意思就是这样了。WMI的命名空间创建了一个层次结构,有点类似于我们的目录文件结构。1、root-作为所有其他名字的占位符;2、rootdefault-与注册表操作有关的类;3、rootsecurity-与系统安全有关的类;4、rootcimv2-从CIM派生的类,代表我们最常用的工作环境。三、WMI的对象路径WMI的对象路径用来在CIM库中定位类和它的事例,对象路径用两个反斜杠开头,第一个元素是目标计算机的名字,第二个元素是相应的WMI命名空间,第三个元素是相应的类名,并用: 将它与命名空间分隔开来。例如:.ro

26、otcimv2:win32_service其中那个 . 代表是本地系统。四、WMI的查询语言WQL仅仅是ANSI SQL的一个子集,只能用于数据的提取。数据、事件查询的基本语法为:Select pro1 , pro2 , pro3from myclass(myclassevent)例如:Select name , path from Win32_share说明:列出所有共享的名称和路径也可以使用通配符 * ,例如:Select * from Win32_share关键字Where 用于限定查询的范围。例如:Select * from Win32_share where name=”Admin”

27、五、WMI脚本中使用的三个步骤步骤 1:连接到 WMI 服务在任何 WMI 脚本中,第一个步骤都是建立一个到目标计算机上的 Windows 管理服务的连接。方法是调用作者:临汾市外事旅游局薛靖澜,转载请注明出处 VBScript 的 Getobject 函数并将 WMI 脚本库的名字对象的名称(即“winmgmts:”,后跟目标计算机的名称)传递到 Getobject,并返回一个对象的引用,此时,您就可以调用其提供的方法如:InstancesOf,正如方法名所示,InstancesOf 返回由资源的类名标识的托管资源的所有实例。步骤 2:检索 WMI 托管资源的实例一般采用WQL来实现。步骤

28、3:显示 WMI 托管资源的属性最后一个步骤是枚举 检索得到集合的内容。一般采用For each enum inmyclassNext结构来实现。六、WMI 测试器 (wbemtest.exe)验证脚本执行结果现在,您对可用于浏览和查看 CIM 的工具已经有了一些认识,让我们使用 WMI 测试器 (wbemtest.exe) 来检查 Win32_Process 类定义,以便从在您的本地计算机上运行的进程检索一些属性。1.打开一个命令提示,键入 C:wbemtest.exe,按下 Enter 来开始 WMI 测试器工具。请注意,大部分按钮在主 WMI 测试器窗口上是被禁用的,这说明此时您没有连接

29、到 WMI。2.单击 “连接”按钮 连接到本地或远程计算机上的 WMI 服务。显示“连接”对话框,它提供一个标记为 名称空间的文本输入区域,该区域默认值为 rootdefault。将 名称空间 区域的值更改为 rootcimv2,单击“连接”对话框的连接 按钮返回到主 WMI 测试器窗口。3.主窗口中左上角的命名空间标识符应该显示为 rootcimv2。请注意,所有的按钮现在都已启用,这说明在当前凭据环境下,您已经成功连接到本地主机上的 WMI。单击 枚举类别打开“超类信息”对话框。4.在“超类信息”对话框中,不要填写 输入超类别名称 区域,单击 递归 选项,单击 确定 以枚举 rootcimv2 名称空间中定义的所有 CIM 类。请注意,列于“查询结果”对话框顶部的类是以两个下划线为开头的。这些是系统类。系统类是预定义的 CIM 类,支持内部 WMI 配置与操作,例如提供程序注册、命名空间安全性及事件通知等。现在,忽略系统类,向下滚动“查询结果”对话框直至看到以 CIM_ 开头的类。名称以 CIM_ 开头的类是由 DMTF 维护的核心与公共基类。继续向下滚动直至到达以 Win32_ 开头的类。 名称以 Win32_ 开头的类是 Microsoft 扩展类,表示 Wind

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1