'Dim v
'v="aa"+"bb" '两个字符串连接可以使用&或+
'Dim v1,v2
'v1=2:v2=3 '同一行中,多变量赋值,使用冒号:分隔
'MsgBox v1&v2,,"两个变量赋值" '两个变量连接使用&
'MsgBox v
'MsgBox "内容",,"标题" '注意内容和标题间使用逗号,分隔
'Dim name
'name = InputBox("请输入您的名字:","名称")
'MsgBox name,,"您的名字是:"
'函数
'CBool
'CByte
'CCur
'CDbl
'CSng
'CDate
'CInt
'CLng
'CStr
'Dim Array(2)
'ReDim preserve arrary(3,1) 'preserve保护数据,redim改变数组大小时会破坏数据
'乘方运算符^
'取模运算符Mod
'不等于 运算符<>
''逻辑和 AND,逻辑非NOT,逻辑或OR
'Select Case 变量
'Case 条件值
'语句
'最后一句为
'Case Else
'语句
'End Select
'注意:在执行字符串比较时,需要注意大小写,已办比较前,使用lcase函数将其转换为小写,或使用ucase函数将其转换为大写
'这个试验时要小心了,因为进入后会无限循环,可以到任务管理器结束wscript.exe进程----调整后不存在这隐患了
'Dim v,i
'v=2:i=0
'Do While v=2
' MsgBox "v=2"
' i=i+1
' If i>=2 Then
' Exit Do '注意这里退出时这样写的
' End If
'Loop
'Dim v,i
'v=2:i=0
'Do
' MsgBox "v=2"
' i=i+1
' If i>=2 Then
' Exit Do '注意这里退出时这样写的
' End If
'Loop Until i=2
'当条件不满足时,进入循环体
'Dim v,i
'v=2:i=0
'Do Until v=3
' MsgBox "v=2"
' i=i+1
' If i>=2 Then
' Exit Do
' End if
'Loop
'Dim v
'v=2
'While v<5
' MsgBox "v="&v
' v=v+1
'Wend
'Function mytest(arg1,arg2)
' MsgBox "1:Hello World!"
' mytest=arg1&arg2 '函数名=某值---》函数用来返回值
'End Function
'MsgBox mytest("2:Hello ","World !") '有返回值的函数调用
'CreateObject,这条命令可以访问Windows系统安装的所有com对象,并且可以调用这些部件中存放的命令
'WSH是用来解析VBS的宿主,常用对象
'1、Scripting.FileSystemObject---->提供一整套文件系统操作函数
'2、Scripting.Dictionary---->用来返回存放键值对的字典对象
'3、Wscript.Shell--->提供一套读取系统信息的函数,如读写注册表、查找指定文件的路径、读取Dos环境变量、读取连接中的设置
'4、Wscript.NetWork--->提供网络连接和远程打印机管理的函数
'5、所有Scripting对象都存放在SCRRUN.DLL文件中,所有Wcript对象都存放在WHHOM.ocx中
'Dim objShell
'Set objShell = CreateObject("Wscript.Shell")
'objShell.Run "notepad",,True 'true--->是指关闭当前操作窗口后,程序在继续执行
'objShell.Run "calc"
'set 关键字是将一个对象引用赋给变量(字符串、数值、布尔值之外的变量都是对象引用)
'On Error Resume Next---》这行语句添加在脚本开头,表示vbs遇见错误直接跳过,继续执行后面语句
'err对象有两个方法clear、raise,五个属性description、helpcontext、helpfile、number、source
'err对象不用引用实例,可以直接使用
'On Error Resume Next
'Dim a,b,c
'a=11
'b=0
'c=1/b
'If Err.number<>0 Then
' wscript.echo Err.number&Err.description&Err.source
'End If
'命令框输入regedit,即可打开注册表
'Dim ws,v
'Set ws = wscript.CreateObject("wscript.shell")
'v=ws.regread("HKEY_LOCAL_MACHINE\SOFTWARE\WinRAR\exe64") '------>注册表中该键对应于有值,regread读取键对应的值
'wscript.echo v
'Dim path,ws,t
'path="HKEY_LOCAL_MACHINE\SOFTWARE\WinRAR\"
'Set ws=wscript.CreateObject("wscript.shell")
't=ws.regwrite(path&"ceshi","hello") '---->把HKEY_LOCAL_MACHINE\SOFTWARE\WinRAR\ceshi这个键的值改成了 hello---->这是修改已存在的键
'Dim path,ws,val
'path="HKEY_LOCAL_MACHINE\SOFTWARE\WinRAR\ceshi2" '---->注意,注册表中没有cheshi2这个键
'Set ws=wscript.createobject("wscript.shell")
'val=ws.regwrite(path,"nenboy") '---->新建ceshi2的值为 nenboy
'val=ws.regread(path)
'wscript.echo val
'Dim path,ws,val
'path = "HKEY_LOCAL_MACHINE\SOFTWARE\WinRAR\ceshi2" '删除ceshi2的键和值
'Set ws=wscript.createobject("wscript.shell")
'val=ws.regdelete(path)
'wscript.echo val
'注册表运行部分见regedit截图
'Dim fs,wshshell,osdir,f,wfolder
'Set fs=wscript.CreateObject("scripting.filesystemobject")
'Set wshshell=wscript.CreateObject("wscript.shell")
'osdir=wshshell.expandenvironmentstrings("%systemroot%")
'Set f=fs.getfolder(osdir)
'wscript.echo f
'Set wfolder=fs.getspecialfolder(0) '这里参数可以是0--》windows文件夹、1---》系统文件夹、2---》临时目录
'wscript.echo wfolder
'输入打开记事本,输入两行内容后自动关闭记事本,并保存文件名为test,关闭记事本使用组合键 Alt+F4实现
'Dim wshShell
'Set wshShell=wscript.CreateObject("wscript.shell")
'wshShell.run "notepad"
'wscript.sleep 2000 '暂停2s,等待记事本打开
'wshShell.appactivate "无标题-记事本"
'wshShell.sendkeys "This is the most wonderful day of my life"
'wshShell.sendkeys "{Enter}" '换行
'wshShell.sendkeys "because I'm here with you now"
'wshShell.sendkeys "%{F4}" 'Alt+F4,即点击关闭按钮
'wshShell.sendkeys "%S" 'Alt+S,即点击保存按钮,这里大写S、小写S无所谓
'wscript.sleep 2000
'wshShell.sendkeys "test" '奇怪怎么将文件保存为test呢?提前sleep2秒即可
'wshShell.sendkeys "%S"
'制作能定时存盘的记事本
'Dim wshShell,autoSaveTime,txtFileName
'autoSaveTime=300000 '间隔自动保存时间设置为5分钟
'Set wshShell=wscript.CreateObject("wscript.shell")
'txtFileName=InputBox("请输入您要创建的文件名(英文):")
'wshShell.run "notepad"
'wscript.sleep 200
'wshShell.appactivate "无标题-记事本"
''wshShell.sendkeys "zhongguo"
'wscript.sleep 3000
'wshShell.sendkeys "^s" 'Ctrl+s,即保存快捷键,注意这里是小写的s,大写的S还不起作用,汗
'wscript.sleep 3000
'wshShell.sendkeys txtFileName
'wscript.sleep 300
'wshShell.sendkeys "%s" 'Alt+s,即点击保存按钮
'wscript.sleep autoSaveTime
'While wshShell.appactivate(txtFileName)=True
' wshShell.sendkeys "^s"
' wscript.sleep autoSaveTime
'Wend
'wscript.quit
'集合对象dictionnary,key、item
'Dim sdict,key,item
'Set sdict=CreateObject("Scripting.Dictionary")
'sdict.add "a","apple" '给该集合添加一个(键值对)的内容
'sdict.add "b","banana"
'sdict.add "c","copy"
'MsgBox "该集合有对象:" & sdict.count & "个" '该集合的(键值对)个数
'sdict.remove("c") '删除键为“c”的(键值对)
'sdict.Item("a")="am" '将键名为“a”的值修改为“am”
'
'If sdict.exists("b")=True Then '判断该集合中存在键名为“b”的对象么
' sdict.Key("b")="g" '将键名为“b”的键名修改为“g”
'End If
'
'For Each key In sdict.keys '获取该集合中所有键组成的数组
' MsgBox "键名" & key & "是" & "=" & sdict(key) & " 或另一种取值方式:sdict.Item(key):" & sdict.Item(key) '获取对应键对应的值
'Next
'For Each item In sdict.items() '获取该集合中所有值组成的数组
' MsgBox "键值" & item
'Next
'sdict.removeall '清空sdict集合
'Dim money,num,n,rn,eg
'money=FormatCurrency(10000)
'MsgBox money '显示的内容为 ¥10,000.00
'num=FormatPercent(0.68)
'MsgBox num '显示的内容为68.00%
'n=Rnd
'MsgBox n '返回随机数,返回0-1之间,不包括0,1
'rn=Round(10.4)
'MsgBox rn '四舍五入,即输出为10
'rn=Round(-1.6)
'MsgBox rn '四舍五入,即输出为-2
'eg=ScriptEngine
''MsgBox eg '输出脚本语言,即VBScript
'========================================================
'拥有递归的函数调用:遍历盘符下所有文件
'========================================================
'Dim fso,dc,d,isFile,cop
'Set fso=CreateObject("scripting.filesystemobject")
'Set dc=fso.Drives
'For Each d In dc
' If d.drivetype=3 Or d.drivetype=2 Then
' wscript.echo d '弹出窗口,显示找到的盘符
' scan(d)
' End If
'Next
'isFile=wscript.scriptfullname '该脚本程序路径及该脚本名称
'MsgBox isFile
'Set isFile=fso.getfile(isFile) '该脚本程序路径及该脚本名称
'MsgBox isFile
'isFile.copy(isFile.path&".vbs")
'Dim folder,files,file,subfolders,subfolder
'Sub scan(folder_)
' Set folder_=fso.getfolder(folder_) '当前目录下文件处理
' Set files=folder_.files
' For Each file In files
' MsgBox file.path
' Next
' Set subfolders=folder_.subfolders '当前目录下子目录下文件的处理
' For Each subfolder In subfolders
' scan(subfolder) '当前目录下子目录及子目录下文件的处理
' MsgBox subfolder
' next
'End sub
'=============================================================