VBS教程总结

1.变量常量

变量的定义

可以通过 Dim、Public 或Private语句声明 VBScript 变量:

Dim opera,operb,result

用 Option Explicit(显示声明,强制所有变量必须先申明才能使用) 语句。如果您使用这个语句,就必须使用 dim、public 或 private 语句来声明所有的变量。

Option Explicit
Dim carname
carname=some value

常量的定义

Const vbPI = 3.14

应用

Dim opera,operb,result1
opera = InputBox("Please input a's value")
operb = InputBox("Please input b's value")
result1 = Int(opera) + Int(operb)
result2 = Int(opera) - Int(operb)
MsgBox opera & "+" & operb & "=" & result1
MsgBox opera & "-" & operb & "=" & result2

其中,输入语句 InputBox()

           输出语句 MsgBox()

 opera&"+"&operb&"="&result,&为连接符(+也是连接符), 作用是链接字符串或变量

2.字符串相关函数

Lcase和Ucase

大小写转换:Lcase和Ucase

'转换成小写
X = LCase("aBc") 'abc
'转换成大写
X = UCase("aBc") 'ABC

StrComp

比较,用来比较两个字符串,若是相等则返回0。

x = StrComp("abc","abc") '返回0
x = StrComp("abc","aBc") '返回非0

StrReverse

翻转字符串

'返回 yhW
x = StrReverse("Why")

Len

返回字符串长度

'返回3
x = Len("abc")

Left

返回一个字符串左边指定数目的字符、

'返回"This is"
x = Left("This is a test",7)

Right

返回一个字符串右边指定数目的字符

'返回"test"
x = Right("This is a test",4)

Mid

Mid 函数从字符串中返回指定数量的字符。如果没有指定数目,则返回从中间到最后的字符。

语法:Mid(string,start[,length])

参数描述
string必需。从其中返回字符的字符串表达式。
start必需。规定起始位置。如果设置为大于字符串中的字符数量,则返回空字符串("")。
length可选。要返回的字符数量。

 

 InStr

函数返回一个字符串在另一个字符串中首次出现的位置。

语法:InStr([start,]string1,string2[,compare])

参数描述
start可选。规定每次搜索的起始位置。默认的搜索起始位置是第一个字符(1)。如果已规定 compare 参数,则必须有此参数。
string1必需。需要被搜索的字符串。
string2必需。需要搜索的字符串表达式。
compare可选。规定要使用的字符串比较类型。默认是 0。

可采用下列的值:

  • 0 = vbBinaryCompare - 执行二进制比较
  • 1 = vbTextCompare - 执行文本比较

InStr 函数返回下面的值:

  • 如果 string1 为 "" - InStr 返回 0
  • 如果 string1 为 Null - InStr 返回 Null
  • 如果 string2 为 "" - InStr 返回 start
  • 如果 string2 为 Null - InStr 返回 Null
  • 如果 string2 没有找到 - InStr 返回 0
  • 如果在 string1 中找到 string2 - InStr 返回找到匹配字符串的位置
  • 如果 start > Len(string1) - InStr 返回 0

例子:

txt="This is a beautiful day!"
MsgBox InStr(1,txt,"i") 'result:3
MsgBox InStr(7,txt,"i") 'result:16

InStrRev

InStrRev 函数返回字符串在另一字符串中首次出现的位置。搜索从字符串的末端开始,但是返回的位置是从字符串的起点开始计数的。

InStrRev(string1,string2[,start[,compare]])

参数描述
string1必需。需要被搜索的字符串。
string2必需。需要搜索的字符串表达式。
start可选。规定每次搜索的起始位置。默认的搜索起始位置是最后一个字符(-1)。
compare可选。规定要使用的字符串比较类型。默认是 0。

可采用下列的值:

  • 0 = vbBinaryCompare - 执行二进制比较
  • 1 = vbTextCompare - 执行文本比较
  • 如果 string1 为 "" - InStrRev 返回 0
  • 如果 string1 为 Null - InStrRev 返回 Null
  • 如果 string2 为 "" - InStrRev 返回 start
  • 如果 string2 为 Null - InStrRev 返回 Null
  • 如果 string2 没有找到 - InStrRev 返回 0
  • 如果在 string1 中找到 string2 - InStrRev 返回找到匹配字符串的位置
  • 如果 start > Len(string1) - InStrRev 返回 0

LTrim,RTrim,Trim

去除字符串左边、右边或者两边的空格。

LTrim(string)

参数描述
string必需。字符串表达式。

RTrim(string)

参数描述
string必需。字符串表达式。

Trim(string)

参数描述
string必需。字符串表达式。

Replace

Replace 函数使用另一个字符串替换字符串的指定部分指定的次数。

Replace(string,find,replacewith[,start[,count[,compare]]])

参数描述
string必需。被搜索的字符串。
find必需。将被替换的字符串部分。
replacewith必需。用于替换的子字符串。
start可选。指定的开始位置。默认值是 1。起始位置之前的所有字符将被删除。
count可选。规定要执行的替换的次数。
默认值是 -1,表示进行所有可能的替换。
compare可选。规定要使用的字符串比较类型。默认是 0。

可采用下列的值:

  • 0 = vbBinaryCompare - 执行二进制比较
  • 1 = vbTextCompare - 执行文本比较

Space

生成指定数目的空格。

Space(number)

参数描述
number必需。字符串中的空格数量。

String

String 函数返回包含指定长度的重复字符的一个字符串。

String(number,character)

参数描述
number必需。被返回字符串的长度。
character必需。被重复的字符。

  

Array

Array 函数返回一个包含数组的变量。

注意:数组中的第一个元素索引是零。

Array(arglist)

参数描述
arglist必需。数组中元素值的列表(由逗号分割)。
a=Array(5,10,15,20)
MsgBox a(3) '20

UBound和LBound

UBound(arrayname[, dimension])

arrayname

必选项。数组变量名,遵循标准变量命名规则。

Dimension

可选项。指定返回哪一维上界的整数。1 表示第一维,2 表示第二维,以此类推。如果省略 dimension 参数,则默认值为 1。

UBound 函数与 LBound 函数一起使用,用于确定数组的大小。使用 LBound 函数可以确定数组某一维的下界。

所有维的下界均为 0。对于有这样维数的数组,UBound 函数返回以下结果:

Dim A(100,3,4)
语句返回值
UBound(A, 1)100
UBound(A, 2)3
UBound(A, 3)4

Filter

Filter 函数返回一个基于 0 的数组,此数组包含以特定过滤条件为基础的字符串数组的子集。

注意:如果找不到与 value 参数相匹配的值,Filter 函数会返回一个空数组。

注意:如果参数 inputstrings 为 Null 或者不是一维数组,则会发生错误。

Filter(inputstrings,value[,include[,compare]])

参数描述
inputstrings必需。要检索的一维字符串数组。
value必需。要搜索的字符串。
include可选。Boolean 值,指定返回的子字符串是否包含 Value。如果 Include 为 True,Filter 将返回包含子字符串 Value 的数组子集。如果 Include 为 False,Filter 将返回不包含子字符串 Value 的数组子集。默认值为 True。
compare可选。规定要使用的字符串比较类型。

可采用下列的值:

  • 0 = vbBinaryCompare - 执行二进制比较
  • 1 = vbTextCompare - 执行文本比较
a=Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
b=Filter(a,"S")
for each x in b
	MsgBox x
Next
'结果:Sunday,Saturday

Split

Split(expression[,delimiter[,count[,compare]]])
参数描述
expression必需的。包含子字符串和分隔符的字符串表达式。
delimiter可选的。用于识别子字符串界限的字符。默认是空格字符。
count可选的。需被返回的子字符串的数目。-1 指示返回所有的子字符串。
compare

可选的。规定要使用的字符串比较类型。

可采用下列的值:

  • 0 = vbBinaryCompare - 执行二进制比较。
  • 1 = vbTextCompare - 执行文本比较。

例子1:

Dim testpath,testpaths
testpath = "C:\oabookat\testscript"
testpaths = Split(testpath,"testscript")
MsgBox testpaths(0)

结果:

Join

oin 函数返回一个由数组中若干子字符串组成的字符串。

Join(list[,delimiter])

参数描述
list必需。一维数组,其中包含需被连接的子字符串。
delimiter可选。用于在返回的字符串中分割子字符串的字符。默认是空格字符。
str = "-"
seq = Array("a", "b", "c")
MsgBox Join(seq,"-") 'a-b-c

3.转换函数

CBool

CBool():将表达式转换为Boolean型:

语法:CBool(expression)
该函数将参数expression转换为 Boolean型 。
参数可以是任何有效的表达式。
注解:如果 expression 的结果为 0 ,则返回 False;否则将返回 True。如果 expression 无法被计算成数值,将会产生执行阶段错误。

CByte

CByte():将表达式转换为Byte型。

语法:CByte(expression)
该函数返回一个转换为 Byte 型的表达式。
参数 expression 可以是任何有效的表达式。
注解:使用 CByte 来强制执行 Byte 运算,不管它是单精数、倍精数、或是整数,都可以正常执行。使用 CByte 函数可以在任何语言的版本中,让任何一种数据转换至 Byte型。例如,不同的小数点分隔符号,会依据您系统的国别设定来做适当的确认。而千分位分隔符号也一样。若 expression 超出 Byte 资料型态允许的范围,则将会显示错误。

CCur

CCur():将表达式转换为Currency()货币类型。

语法:CCur(expression)
该函数返回一个转换为 Currency 的表达式。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CCur 来强制执行 Currency 运算,以免被当作整数运算。
可以使用 CCur 函数以在任何语言的版本中,让任何一种数据换至 Currency 型。例如,当使用 CCur,不同的小数点分隔符号、千分位分隔符号,和不同的货币选项,会依据您系统的国别设定来做适当的确认。

CDate

CDate():

语法:CDate(date)
返回一个转换为 Date 型的表达式。
参数 date 是任何有效的日期表达式。
注解:
可以使用 IsDate 函数来检查 date 是否可以被转换成日期或时间。而 CDate 接受日期文字和时间文字以及日期/时间有效范围内的适当数值。当转换一个数字成为日期时,是将整数部分转换成日期;任何数字中的小数部分,将转换为从午夜起算的时间。
CDate 是依据您系统上的国别设定来决定日期的格式。若提供的格式为不可辨识的日期设定,则无法判断日、月、年的顺序。另外,它若包含有星期的字符串,对于这样的完整日期格式也无法辨识。

CDbl()

语法CDbl(expression)
返回一个转换为 Double 态的表达式。
参数 expression 可以是任何有效的表达式,比如string,数字
注解:
可以使用 CDbl 或 CSng 来强制执行双精度或单精度运算以防止被当作货币或整数运算。

结果:两个输出值都是1

CInt

CInt():函数将一个表达式转化为数字类型.

表达式 CInt(expression)

允许数据类型: 任何有效的字符均可,比如字符串、数字

实例:
f = "234"
response.write cint(f) + 2

返回结果: 236

转化字符"234"为数字"234",如果字符串为空,则返回0值

a = "12,890.12000"
b = "12,890.120"
 
If CInt(Replace(a,",","")) = CInt(Replace(b,",","")) Then
	MsgBox 1
Else 
	MsgBox 0
End If
If CInt(a) = CInt(b) Then
	MsgBox 1
Else 
	MsgBox 0
End IF

结果:两个输出值都是1

CLng

语法
CLng(expression)
该函数返回一个转换为 Long 型的表达式。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CInt 或 CLng 来强制执行整数运算,以免被当作货整币、单精度、或双精度运算。
如果 expression 超出 Long型允许的范围,则会发生错误。
附注:
CLng 函数与 Fix 及 Int 函数不同,Fix 和 Int 函数会将小数部分去除,然后返回整数值。当小数部分恰好为 0.5 时, CLng 函数会将它转换成最接近的偶数值。例如,0.5 转换成 0,1.5 转换成 2。

CSng

语法
CSng(expression)
该返回一个转换为  Single  资料型态的表达式。
参数  expression  可以是任何有效的表达式。
注解:
使用  CDbl  或  CSng  来强制执行双精度或单精度运算,以防止被当作货币或整数运算。
如果  expression  超出  Single  型允许的范围,则会发生错误。

CStr 

CStr():函数转化一个表达式为字符串.

表达式 Cstr(expression)

允许数据类型: expression 是任何有效的表达式。

实例: 
s = 3 + 2
response.write "the 返回结果 is: " & cstr(s)

返回结果: 转化数字“5”为字符“5”。

Hex()

Hex(number)

参数描述
number必需。任何有效的表达式。

如果数字是:

  • Null - 那么 Hex 函数返回 Null。
  • Empty - 那么 Hex 函数返回零(0)。
  • Any other number - 那么 Hex 函数返回 8 个十六进制字符。

注解:
如果  number  不是一个整数,那么在执行前会先被四舍五入成最接近的整数。 
可以将十六进位数字直接以&H开头来表示。例如,&H10代表十进位的  16。

Oct()

Oct(number)

参数描述
number必需。任何有效的表达式。

如果数字是:

  • Null - 那么 Oct 函数返回 Null。
  • Empty - 那么 Oct 函数返回零(0)。
  • Any other number - 那么 Oct 函数返回 11 个八进制字符。

可以将八进位数字直接以&O  开头来表示。例如,&O10代表十进位的  8。

Asc

Asc 函数把字符串中的第一个字母转换为对应的 ANSI 代码,并返回结果。

Asc(string)

参数描述
string必需。字符串表达式。不能为空字符串!
MsgBox Asc("A") '65

Chr

Chr 函数把指定的 ANSI 字符代码转换为字符。

注意:从 0 到 31 之间的数字表示不可打印的 ASCII 代码,例如 Chr(10) 将返回一个换行符。

Chr(charcode)

参数描述
charcode必需。标识某个字符的数字。
MsgBox Chr(65) 'A

4.日期和时间函数

Date

返回当前系统日期

Dim MyDate
MyDate = Date
MsgBox MyDate '结果2022/4/27

Time

返回当前系统时间

Dim MyTime
MyTime = Time
MsgBox MyTime '结果 15:06:19
Now

返回当前系统日期和时间

MsgBox Now '结果 2022/4/27 15:08:21

Day/Month/Year

Day

Day函数返回介于 1 到 31 之间的一个代表月的天数的数字。

Day(date)

参数描述
date必需。表示日期的任何表达式。
Msgbox Now() '2022/4/27 15:24:40
Msgbox Day(Now()) '27 

Month

Month 函数返回表示年的月份的数字,介于 1 到 12 之间。

Month(date)

参数描述
date必需。任何表示日期的表达式。
Msgbox Now() '2022/4/27 15:34:36
Msgbox Month(Now()) '4

 Year 

Year 函数返回表示年份的一个数字。

Year(date)

参数描述
date必需。任何可表示日期的表达式。
Msgbox Now() '2022/4/27 15:34:36
Msgbox Year(Now()) '2022

Hour/Minute/Seconds

Hour 函数返回一个 0 到 23 之间的代表天的小时数的数字。

Hour(time)

参数描述
time必需。任何可表示时间的表达式。

Minute 函数返回表示小时的分钟数的数字,介于 0 到 59 之间。

Minute(time)

参数描述
time必需。表示时间的表达式。

Second 函数返回表示分钟的秒数的数字,介于 0 到 59 之间。

Second(time)

参数描述
time必需的。任何表示时间的表达式。
Msgbox Hour(Time) '15
Msgbox Hour(Now) '15
Msgbox Minute(Time) '38
Msgbox Minute(Now) '38
Msgbox Second(Time) '47
Msgbox Second(Now) '47

Weekday

Weekday 函数返回表示一周的天数的数字,介于 1 到 7 之间。

Weekday(date[,firstdayofweek])

参数描述
date必需。要计算的日期表达式。
firstdayofweek可选。规定一周的第一天。

可采用下面的值:

  • 0 = vbUseSystemDayOfWeek - 使用区域语言支持(NLS)API 设置
  • 1 = vbSunday - 星期日(默认)
  • 2 = vbMonday - 星期一
  • 3 = vbTuesday - 星期二
  • 4 = vbWednesday - 星期三
  • 5 = vbThursday - 星期四
  • 6 = vbFriday - 星期五
  • 7 = vbSaturday - 星期六
'Now: 2022/4/27 15:41:10 星期三
Msgbox Weekday(Now) '4
Msgbox Weekday(Now,2) '3

DateDiff

DateDiff 函数返回两个日期之间的时间间隔数。

DateDiff(interval,date1,date2[,firstdayofweek[,firstweekofyear]])

参数描述
interval必需。计算 date1 和 date2 之间的时间间隔的单位。

可采用下面的值:

  • yyyy - 年
  • q - 季度
  • m - 月
  • y - 当年的第几天
  • d - 日
  • w - 当周的第几天
  • ww - 当年的第几周
  • h - 小时
  • n - 分
  • s - 秒
date1,date2必需。日期表达式。在计算中需要使用的两个日期。
firstdayofweek可选。规定一周的日数,即当周的第几天。

可采用下面的值:

  • 0 = vbUseSystemDayOfWeek - 使用区域语言支持(NLS)API 设置
  • 1 = vbSunday - 星期日(默认)
  • 2 = vbMonday - 星期一
  • 3 = vbTuesday - 星期二
  • 4 = vbWednesday - 星期三
  • 5 = vbThursday - 星期四
  • 6 = vbFriday - 星期五
  • 7 = vbSaturday - 星期六
firstweekofyear可选。规定一年中的第一周。

可采用下面的值:

  • 0 = vbUseSystem - 使用区域语言支持(NLS)API 设置
  • 1 = vbFirstJan1 - 由 1 月 1 日所在的星期开始(默认)
  • 2 = vbFirstFourDays - 由在新的一年中至少有四天的第一周开始
  • 3 = vbFirstFullWeek - 由在新的一年中第一个完整的周开始
Msgbox DateDiff ("d",2022/4/25,2022/4/27) '-2
Msgbox DateDiff ("d",2022/4/27,2022/4/25) '2

5.其他函数

TypeName

TypeName 函数返回指定变量的子类型。

TypeName 函数返回下面的值:

  • Byte - 表示一个字节值
  • Integer - 表示一个整型值
  • Long - 表示一个长整型值
  • Single - 表示一个单精度浮点值
  • Double - 表示一个双精度浮点值
  • Currency - 表示一个货币值
  • Decimal - 表示一个十进制值
  • Date - 表示一个日期或时间值
  • String - 表示一个字符串值
  • Boolean - 表示一个布尔值,True 或 False
  • Empty - 表示一个未初始化变量
  • Null - 表示无有效数据
  • <object type> - 表示实际对象类型名
  • Object - 表示一般对象
  • Unknown - 表示未知对象类型
  • Nothing - 表示还未引用对象实例的对象变量
  • Error - 表示一个错误

TypeName(varname)

参数描述
varname必需。变量的名称。
x="Hello World!"
MsgBox TypeName(x) 'String

VarType

VarType 函数返回指示指定变量的子类型的值。

VarType 函数返回下面的值:

  • 0 = vbEmpty - 表示空(未初始化)
  • 1 = vbNull - 表示 Null(无有效数据)
  • 2 = vbInteger - 表示一个整数
  • 3 = vbLong - 表示一个长整数
  • 4 = vbSingle - 表示一个单精度浮点数
  • 5 = vbDouble - 表示一个双精度浮点数
  • 6 = vbCurrency - 表示货币
  • 7 = vbDate - 表示日期
  • 8 = vbString - 表示一个字符串
  • 9 = vbObject - 表示一个 automation 对象
  • 10 = vbError - 表示一个错误
  • 11 = vbBoolean - 表示一个布尔值
  • 12 = vbVariant - 表示 Variant(仅用于变量数组)
  • 13 = vbDataObject - 表示一个数据访问对象
  • 17 = vbByte - 表示一个字节
  • 8192 = vbArray - 表示一个数组

注意:假如变量是数组,则 VarType() 会返回 8192 + VarType(array_element)。举例:整数数组的 VarType() 会返回 8192 + 2 = 8194。

VarType(varname)

参数描述
varname必需。变量的名称。
x="Hello World!"
MsgBox VarType(x) '8

GetRef

CreatObject

CreateObject 函数创建一个指定类型的对象。

CreateObject(servername.typename[,location])

参数描述
servername必需。提供此对象的应用程序名称。
typename必需。对象的类型或类(type/class)。
location可选。在何处创建对象。
'声明变量
Dim ExcelSheet
'为Excel.Application创建一个DOM对象
Set ExcelSheet = CreateObject("Excel.Application")
aRemoteSever = "127.1.1.1"
'在远程服务器上为Excel.Application创建一个COM对象
Set ExcelSheet = CreateObject("Excel.Application",sRemoteSever)

CreateObject,这条命令可以访问windows系统内安装的所有COM对象,并且可以调用这些部件中存放的命令。

COM对象(COM:The Component Object Model 组件对象模型)是遵循COM规范编写以Win32动态链接库(DLL)或可执行文件(EXE)形式发布的可执行二进制代码,能够满足对组件架构的所有需求。简单的说,COM就是别人写好的模块,我们要做的仅仅是调用它,而不必关心它的内部实现,这也是COM技术的一个初衷。ProgID可以认为是开发人员为COM对象起的一个名字,我们把COM对象的名字传递给CreateObject函数,告诉它我们想创建这个对象,CreateObject函数就会返回这个对象的指针给你。

​ WSH 是“Windows Scripting Host”的缩略形式,其通用的中文译名为“Windows脚本宿主”。对于这个较为抽象的名词,我们可以先作这样一个笼统的理解:它是内嵌于 Windows 操作系统中的脚本语言工作环境。WSH的工作流程,实际上就是脚本文件被解析并执行的过程。WSH 实际上是一个脚本语言的运行环境,它之所以具备强大的功能,是在于充分挖掘了脚本语言的潜力。脚本文件的编写十分方便,你可以选用任意一个文字编辑软件进行编写,写完后,你只需将它保存为 WSH 所支持的文件名就行了(如 ..js 文件、.vbs 文件),WSH也就是用来解析VBS语言的宿主,本身包含了几个个常用对象:

  1. Scripting.FileSystemObject>提供一整套文件系统操作函数,它允许我们在代码内操作文本文件、文件夹及驱动器。
  2. Scripting.Dictionary>用来返回存放键值对的字典对象
  3. Wscript.Shell一>提供一套读取系统信息的函数,如读写注册表、查找指定文件的路径、读取DOS 环境变量,读取链接中的设置
  4. Wscript.NetWork>提供网络连接和远程打印机管理的函数。(其中,所有Scripting对象都存在SCRRUNDLL文件中,所有的Wscript对象都存放在WSHOMocx文件中。)

GetObject

GetObject 函数返回对文件或已经打开应用 automation 对象的引用。

语法:GetObject([pathname][,class])

参数描述
pathname可选。包含 automation 对象的文件的完整路径和名称。如果此参数被忽略,就必须有 class 参数。
class可选。automation 对象的类。此参数使用此语法:appname.objectype。

Set objSWbemServices = GetObject("winmgmts:")

参考:Microsoft Windows 2000 Scripting Guide - The "WinMgmts:" Prefix | Microsoft Docs

Win32_DiskQuota, ROOT\CIMV2

WMI中相关的操作说明execquery 或者是instancesof_weixin_33756418的博客-CSDN博客

WMI 名字对象可以由三部分组成:一个强制组件和两个可选组件。强制性组件是“winmgmts:”前缀。所有 WMI 名称都必须以“winmgmts:”开头。

指定仅包含“winmgmts:”前缀的名字对象是您可以使用的 WMI 名字对象的最基本形式。结果始终是对 SWbemServices 对象的引用,该对象表示与本地计算机上的 Windows Management Instrumentation 服务的连接。

Set objSWbemServices = GetObject("winmgmts:")
Set colSWbemObjectSet = objSWbemServices.InstancesOf("Win32_LogicalDisk")

或写成:

Set colSWbemObjectSet = GetObject("winmgmts:").InstancesOf("Win32_LogicalDisk") 

6.循环语句

6.1 For...Next 语句

运行一段代码指定的次数(用的较多)

For 语句规定计数变量(i)以及它的初始值和结束值。Next 语句会以 1 作为步进值来递增变量(i)。

通过 Step 关键词,您可以规定计数变量递增或递减的步进值。

退出 For...Next

您可以通过 Exit For 关键词退出 For...Next 语句。

For i=1 To 10
If i=5 Then Exit For
        some code
Next

6.2 For Each...Next 语句 

针对集合中的每个项目或者数组中的每个元素来运行某段代码。

Dim cars(2)
cars(0)="Volvo"
cars(1)="Saab"
cars(2)="BMW"
For Each x In cars
	Msgbox(x)
Next

结果: Volve    Saab    BMW

For i In 和 For Each i In 对比

1.浏览器的兼容性区别

2.for each遍历的是每一项value,for in 遍历的是每一项的key值

6.3 Do...Loop 语句 

运行循环,当条件为 true 或者直到条件为 true 时

您可以使用 While 关键字来检查 Do... Loop 语句的条件。

Do While i>10
some code
Loop

如果 i 等于 9,上述循环内的代码将终止执行。

Do
some code
Loop While i>10

重复执行代码直到条件变成 true

您可以使用 Until 关键字来检查 Do...Loop 语句的条件。

Do Until i=10
some code
Loop

如果 i 等于 10,上述循环内的代码将终止执行。

Do
some code
Loop Until i=10

这个循环内的代码将被执行至少一次,即使 i 等于 10。

退出 Do...Loop

您可以通过 Exit Do 关键词退出 Do...Loop 语句。

Do Until i=10
i=i-1
If i<10 Then Exit Do
Loop

7.条件语句

7.1If 语句

 假如您希望在条件为 true 时执行一系列的代码,可以使用这个语句

if true

   do something

7.2 If...Then...Else 语句

i=hour(time)
If i < 10 Then
document.write("Good morning!")
Else
document.write("Have a nice day!")
End If

7.3 If...Then...ElseIf 语句 

i=hour(time)
If i = 10 Then
document.write("Just started...!")
ElseIf i = 11 Then
document.write("Hungry!")
ElseIf i = 12 Then
document.write("Ah, lunch-time!")
ElseIf i = 16 Then
document.write("Time to go home!")
Else
document.write("Unknown")
End If

7.4 Select Case 语句 

d=weekday(date)
Select Case d
Case 1
document.write("Sleepy Sunday")
Case 2
document.write("Monday again!")
Case 3
document.write("Just Tuesday!")
Case 4
document.write("Wednesday!")
Case 5
document.write("Thursday...")
Case 6
document.write("Finally Friday!")
Case else
document.write("Super Saturday!!!!")
End Select

8.数组

8.1定长数组

Dim username(2)
Dim arraybound,arraycount
Dim i
username(0)="zhangsan"
username(1)="lisi"
username(2)="wangwu"
arraybound=UBound(username)
arraycount=arraybound+1
For i = 0 To arraybound
	MsgBox username(i)
Next
MsgBox arraybound
MsgBox arraycount

LBound()  返回数组的最小可用下标

UBound() 返回数组的最大可用下标

代码也可以改成:

For i = LBound(i) to UBound(i)

      MsgBox username(i)

8.2动态数组

我们可以用ReDim重新定义动态数组的大小,但是每次这样做的话,数组中的值就会销毁。

除非我们像下面这样使用关键字“preserve”

'创建动态数组
Dim X()
'在使用数组之前,数组必须被初始化
Re Dim X(2)
X(0) = "This"
X(1) = "is a"
X(2) = "test"
'重定义数组,保留了前3个元素的值
ReDim Preserve X(5)

9.函数封装

原来的代码

tips:vbCrLf是vbs中的一个字符串常数,即“Chr(13) & Chr(10)”(回车符与换行符连接在一起),是换行的意思。

Dim opera,operb,result
MsgBox "+.加法功能"&vbCrLf&"-.减法功能"
oper = InputBox("请选择功能")
opera = InputBox("a")
operb = InputBox("b")
Select Case oper
	Case "+" 
		result = CInt(opera) + CInt(operb)
	    msgbox result
    Case "-" 
    	result = CInt(opera) - CInt(operb)
	    msgbox result
	Case Else MsgBox "输入错误"
End Select	 

Function和sub

Function有返回值

Sub没有返回值

Function有返回值,因为vbs没有return语句,所以Function会返回和函数名同名的变量的值

Function addtest(testa,testb)
	addtest = CInt(testa) + CInt(testb)
End Function
 
MsgBox addtest("1",2)

结果:

如果再加一个其他变量

Function addtest(testa,testb)
	test = CInt(testa) - CInt(testb)
	addtest = CInt(testa) + CInt(testb)
End Function
 
MsgBox addtest("8",2)

 结果:

改造:

oper = InputBox("请选择功能")
opera = InputBox("a")
operb = InputBox("b")
Select Case oper
	Case "+"  MsgBox addtest(opera,operb)
    Case "-"  subtraction opera,operb
	Case Else MsgBox "输入错误"
End Select	 
 
'function
Function addtest(testa,testb)
	addtest = CInt(testa) + CInt(testb)
End Function
 
'sub
Sub subtraction(testa,testb)
	result = CInt(testa) - CInt(testb)
	'sub函数没有返回值
	MsgBox result
End sub

call

Call 语句

将控制权传递给 Sub 或 Function 过程。

 [Call] name [argumentlist]

可选项关键字。如果指定此关键字,则必须用括号把 argumentlist 括起来。例如:

Call MyFunction("Hello World")
Function MyFunction(text)   
	MsgBox text
End Function
Call MySub("Hello World")
Function MySub(text)   
	MsgBox text
End Function

10.fso(Scripting.FileSystemObject)

 FileSystemObject对象

参考:VBS中FileSystemObject对象详解_花蝴蝶的专栏-CSDN博客

 FileSystemObject 对象的作用:提供对计算机文件系统的访问,它允许我们在代码内操作文本文件、文件夹及驱动器。

FSO包含的常见对象有:

对象/集合描述
Drive包含储存设备的信息,包括硬盘、光驱、ram盘、网络驱动器
Drives提供一个物理和逻辑驱动器的列表
File检查和处理文件
Files提供包含在文件夹内的所有文件的列表
Folder检查和处理文件夹
Folders提供在 Folder 内的所有文件夹的列表
TextStream对象,用来读写文本文件
FileSystemObject对象总共一个属性即Drives

描述:获得所有可用驱动器的集合。
说明:无论是否本地磁盘、插入媒体、可移动媒体驱动器都显示在 Drives 集合中。
      具体示例代码如下所示:获取本计算机上所有的磁盘的盘符 
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
Set Drivers = fso.Drives
For Each Driver in Drivers   
	Msgbox Driver.DriveLetter '输出计算机上所有的磁盘盘符
Next 

10.1 folder

CreateFolder

FSO是FileSystemObject 或 Scripting.FileSystemObject 的缩写,为 IIS 内置组件,用于操作磁盘、文件夹或文本文件。

描述:创建一个空的文件夹
语法:object. CreateFolder(strFolder)
参数:strFolder为想要创建的文件夹路径及名称
Dim fso
'创建一个文件系统对象
Set fso = CreateObject("Scripting.FileSystemObject")
'在D:\learning\vbs下创建一个文件夹
Set f = fso.CreateFolder("D:\learning\vbs\1")
'把fso对象所占用的内存释放掉
Set fso = Nothing

结果:生成文件夹:1

改造使其更通用 :

其中:FolderExist

描述:判断指定文件夹是否存在
语法:object. FolderExists (strFolder)
参数:strFolder为指定的文件夹
Sub createfolder(folderpath,foldname)
	Dim fso
	'创建一个文件系统对象
	Set fso = CreateObject("Scripting.FileSystemObject")
	If fso.FolderExists(folderpath&foldname)Then
		MsgBox ("文件夹已存在")
	Else
		MsgBox "文件夹不存在,现在开始创建"
		'在D:\learning\vbs下创建一个文件夹
		Set f = fso.CreateFolder(folderpath&foldname)
	End If
	'把fso对象所占用的内存释放掉	
	Set fso = Nothing
End Sub
'调用
createfolder "D:\learning\vbs\","2"

DeleteFolder

删除一个文件夹
语法:object. DeleteFolder(strFolder,force)
参数:strFolder为想要删除的文件夹名称。组成部分中可用通配符。
           force如果要删除只读文件夹,则该值为 True;否则为 False(默认)
      
示例:删除文件夹: c:\test

Dim Fso
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用DeleteFile删除指定文件
Fso.DeleteFolder("c:\test")
'强制删除只读的文件
Fso.DeleteFolder "c:\test",True

CopyFolder

描述:将文件夹从某位置复制到另一位置

语法:object. CopyFolder "source", "destination"[, overwrite]

参数:source必选项。表示指定文件夹的路径。组成部分中可用通配符。
           destination必选项。表示目标位置的路径
           overwrite可选项。Boolean 值表明是否覆盖现有文件夹。如果是 True,则覆盖文件夹;如果是 False,则不覆盖现有文件夹。默认值是 True

示例:将 c:\test文件夹复制到D:\下    

Dim Fso
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用CopyFile复制文件到另一个位置,默认为True覆盖已存在文件
Fso.CopyFolder "c:\test","D:\"
'False不覆盖已存在文件
Fso.CopyFolder "c:\test","D:\",False

MoveFolder

描述:将一个或多个文件夹从某位置移动到另一位置
语法:object.MoveFolder source, destination
参数:source必选项。要移动的文件夹的路径。组成部分中可用通配符。
           destination必选项。指定路径,表示要将文件夹移动到该目标位置。

示例:

Dim Fso
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用MoveFolder移动文件夹到另一个位置
Fso.MoveFolder "c:\test","D:\"

GetParentFolderName

描述:获取文件当前所在的文件夹
语法:object.GetParentFolderName Path
参数:Path必选项。文件路径名。
示例:获取”c:\test.txt”文件所在的文件夹

Dim Fso
Dim GetParentFolderName
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用GetParentFolderName获取文件当前所在的文件夹
GetParentFolderName = Fso.GetParentFolderName("c:\test\test.txt")
MsgBox GetParentFolderName '输出c:\test

GetBaseName 方法

返回字符串,其中包含文件的基本名 (不带扩展名), 或者提供的路径说明中的文件夹。
语法:object.GetBaseName(path)
参数
object:必选项,应为 FileSystemObject 的名称。
path:必选项。指定文件或文件夹的路径,要返回其组成部分的基本名。
如果路径中没有任何文件或文件夹与指定的 path 参数匹配,则 GetBaseName 方法返回零长度字符串 ("")。

Function GetTheBase(filespec)  
	Dim fso  
	Set fso = CreateObject("Scripting.FileSystemObject")  
	GetTheBase = fso.GetBaseName(filespec)
	MsgBox GetTheBase
End Function
GetTheBase("D:\learning\vbs\oabookat\testcase")

结果:

 10.2 file

关于 TextStream 对象

    TextStream对象是用于访问文本文件的对象,它是FileSystemObject一个独立的附属对象,但在使用TextStream对象时,我们仍要借助FileSystemObject 对象或其附属对象来创一个TextStream 对象并访问磁盘文件的内容。可以通过FileSystemObject 对象的CreateTextFile()及OpenTextFile(),来获取TextStream的对象句柄。

TextStream对象的方法:

方法

说明

Close()

关闭一个打开的文件

Read(numchars)

从文件中读出 numchars 个字符

ReadAll()

作为单个字符串读出整个文件

ReadLine()

作为一个字符串从文件中读出一行(直到回车符和换行)

Skip(numchars)

当从文件读出时忽略 numchars 个字符

SkipLine()

当从文件读出时忽略下一行

Write(string)

向文件写入字符串 string

WriteLine(string)

向文件写入字符串 string(可选)和换行符

WriteBlankLines(n)

向文件写入 n 个换行符

TextStream对象的属性:

属性

说明

AtEndOfLine

如果文件位置指针在文件中一行的末尾则返回 True

AtEndOfStream

如果文件位置指针在文件的末尾则返回 True

Column

从 1 开始返回文件中当前字符的列号

Line

从 1 开始返回文件中当前行的行号”

CreateFile

用指定的文件名 filename 在磁盘上创建一个新的文本文件,并返回与其对应的 TextStream 对象

语法:object. CreateTextFile(filename,blnOverWrite,unicode)

参数描述
filename文件名称
blnOverWrite可选项,Ture强制覆盖,为False不覆盖
unicode可选项,如果以 Unicode 文件格式创建文件,则该值为 True;如果以 ASCII 文件格式创建文件,则该值为 False。如果省略此部分,则假定创建 ASCII 文件。
Option Explicit
Dim fso,f
'Create file
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.CreateTextFile("D:\learning\vbs\1\testfile.txt", True)

OpenTextFile

OpenTextFile(filename[, iomode[, create[, format]]])   

打开一个指定的文件并返回一个 TextStream 对象,该对象可用于对文件进行读、写、追加操作。   

CreateTextFile 和OpenTextFile属于同一等级的函数,不要以为应该是先CreateTextFile以后就应该调用OpenTextFile,并不是这样的,完全可以通过OpenTextFile中的第三个属性(true)来新建一个文件并写入。

参数描述
filename文件名称
iomodeiForReading 1  打开一个只读文件,不能对此文件进行写操作。    
ForWriting    2  打开一个用于写操作的文件。如果和此文件同名的文件已存在,则覆盖以前内容。    
ForAppending  8  打开一个文件并写到文件的尾部。    
create可选,它表示如果指定的 filename 不存在是否可以创建一个新文件。如果创建新文件,其值为 True。若不创建文件其值为 False。缺省值为 False。    
FormatTristateUseDefault   –2   使用系统缺省打开文件。    
TristateTrue    –1   以 Unicode 格式打开文件。    
TristateFalse      0   以 ASCII 格式打开文件。   
Option Explicit
Dim fso,f
'创建常量
Const ForReading = 1,ForWritting = 2,ForAppending = 8
'Create file
Set fso = CreateObject("Scripting.FileSystemObject")
'Set f = fso.CreateTextFile("D:\learning\vbs\1\testfile.txt", True)
'Open file
Set f = fso.OpenTextFile("D:\learning\vbs\1\testfile.txt",ForAppending,False)
f.WriteLine("Hello")
f.Close
Set fso = nothing

封装函数使其更通用:

Option Explicit
Sub writelog(filepath,logstr)
	Dim fso,f
	'创建常量
	Const ForReading = 1,ForWritting = 2,ForAppending = 8
	'Create file
	Set fso = CreateObject("Scripting.FileSystemObject")
	'Set f = fso.CreateTextFile(filepath, True)
	'Open file
	Set f = fso.OpenTextFile(filepath,ForAppending,False)
	f.WriteLine logstr
	f.Close
	Set fso = Nothing
End Sub
 
'Now() 返回当前的日期和时间
writelog "D:\learning\vbs\1\testfile.txt",Now() &"---执行自动化测试"

 结果:

DeleteFile

描述:删除一个文件
语法:object. DeleteFile (strFile,force)
参数:strFile为想要删除的文件。组成部分中可用通配符。
           force如果要删除只读文件,则该值为 True;否则为 False(默认)

示例:删除文件: c:\test.txt   

Dim Fso
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用DeleteFile删除指定文件
Fso.DeleteFile("c:\test.txt")
'强制删除只读的文件
Fso.DeleteFile "c:\test.txt",True

CopyFile

描述:将一个或多个文件从某位置复制到另一位置
语法:object.CopyFile "source", "destination"[, overwrite]
参数:source必选项。表示指定文件的路径。组成部分中可用通配符。
          destination必选项。表示目标位置路径
          overwrite可选项。Boolean 值表明是否覆盖现有文件。如果是 True,则覆盖文件;如果是 False,则不覆盖现有文件。默认值是 True
示例:将 c:\test.txt文件复制到D:\下

Dim Fso
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用CopyFile复制文件到另一个位置,False不覆盖已存在文件
Fso.CopyFile "c:\test.txt","D:\",False
'True覆盖已存在文件
Fso.CopyFile "c:\test.txt","D:\",True

示例:将 c:\下所有的txt文件复制到D:\下

Dim Fso
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用*.txt,可以同时将多个文件复制到另一个位置,False不覆盖已存在文件
Fso.CopyFile "c:\*.txt","D:\",False
'True表示覆盖已存在文件
Fso.CopyFile "c:\*.txt","D:\",True

MoveFile

描述:将一个或多个文件从某位置移动到另一位置
语法:object.MoveFile source, destination
参数:source必选项。要移动的文件的路径。组成部分中可用通配符。
          destination必选项。指定路径,表示要将文件移动到该目标位置。
          destination 参数不能包含通配符。
示例:将 c:\test文件夹移动到D:\下

Dim Fso
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用MoveFile移动文件到另一个位置
Fso.MoveFile "c:\test.txt","D:\"

GetBaseName

描述:获取文件当前所在文件夹
语法:object.GetBaseName Path
参数:Path必选项。文件路径名。
示例:获取”c:\test.txt”文件名称

Dim Fso
Dim GetBaseName
'创建FileSystemObject对象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用GetBaseName获取文件的文件名称
GetBaseName = Fso.GetBaseName("c:\test\test.txt")
MsgBox GetBaseName '输出test

11.excel新建

像多数office产品一样,Excel通过其COM接口提供自动化操作方法。

Excel对象模型:

11.1新建、保存、退出Excel工作表:

Dim exlapp,exlworkbook,exlworksheet
'创建Excel对象实例
Set exlapp = CreateObject("Excel.application")
'新增一个工作簿,Add方法返回对它的引用,可以用来操作工作簿
Set exlworkbook = exlapp.Workbooks.Add
'新增一个工作表,Add方法返回对新增工作表的对象引用
Set exlworksheet = exlworkbook.Worksheets.Add
'更新A1单元格的内容
exlworksheet.Cells(1,1) = "Hello,Test"'也可写成 exlworksheet.Cells(1,"A") = "Hello,Test"
'保存新建工作表,这里使用SaveAs方法,因为此工作簿从未被保存过;如果原来存在,则使用Save方法
exlworkbook.SaveAs "D:\learning\vbs\1\testexcel.xls"
'关闭工作簿
exlworkbook.Close
'关闭之前打开的Excel实例,结束进程
exlapp.Quit
'最后销毁所有对象引用
Set exlapp = Nothing
Set exlworkbook = Nothing
Set exlworksheet = Nothing

 结果:

11.2 excel与fso对象判断Excel是否存在

创建前判断Excel是否存在,需要用到FileSystemObject对象来查看文件是否存在

Dim exlapp,exlworkbook,exlworksheet
Dim fso,exlexist,sSourceFile
'源文件
sSourceFile = "D:\learning\vbs\1\test1.xls"
Set fso = CreateObject("Scripting.FileSystemObject")
Set exlapp = CreateObject("Excel.application")
'判断文件是否存在
exlexist = fso.FileExists(sSourceFile)
 
If exlexist Then
	'如果文件存在,则打开此文件
	Set exlworkbook = exlapp.Workbooks.Open(sSourceFile)
Else
	'如果文件不存在,则新建
	Set exlworkbook = exlapp.Workbooks.Add
End If
 
'新增一个工作表,Add方法返回对新增工作表的对象引用
Set exlworksheet = exlworkbook.Worksheets.Add
'更新A1单元格的内容
exlworksheet.Cells(1,1) = "Hello,Test"'也可写成 exlworksheet.Cells(1,"A") = "Hello,Test"
 
If exlexist Then
'保存新建工作表,如果原来存在,则使用Save方法
	exlworkbook.Save
'保存新建工作表,如果从未被保存过,则使用SaveAs方法
Else
	exlworkbook.SaveAs sSourceFile
End If
 
'关闭工作簿
exlworkbook.Close
'关闭之前打开的Excel实例,结束进程
exlapp.Quit
'最后销毁所有对象引用
Set exlapp = Nothing
Set exlworkbook = Nothing
Set exlworksheet = Nothing

结果:

 11.3使用EXCEL作为UFT的输出数据表

 CompareMode 属性 - VBScript 用户指南 - 文江博客 (wenjiangs.com)

object.CompareMode[ = compare]

参数:

object:必选项。Dictionary 对象的名称;

compare:可选项。如果提供此参数,compare 参数为数值,表示由函数如 StrComp 使用的比较模式。

compare 参数设置如下:

ConstantValueDescription
vbBinaryCompare0执行二进制比较.
vbTextCompare1执行文本比较.

12.UFT对象导入导出

UFT中,有时候会出现多个模块 存在一样的对象情况,这时候就可以将对象导出到本地,作为公共对象以供调用,这样做的好处就是可以节约资源。步骤如下:

对象导出:

1、从Object Repository ->选择“文件夹”->“导出本地对象”,并删掉该对象库中的所有对象->将 被导出的“对象文件”保存到本地;

对象导入:

2、在UFT脚本编辑器中,使用repositoriescollection.RemoveAll 语句删掉所有残余对象;

3、在UFT脚本编辑器中,使用repositoriescollection.Add"公共对象文件路径",如 repositoriescollection.Add"c:\testtsr.tsr",特地说明,对象库文件是以tsr为后缀名的。

13.UFT自动化对象模型

AOM(Automation Object Model )

目的:用编程的方法控制测试用例的执行。

UFT与VbsEdit怎么联系到一起?

在VbsEdit里面打开Tools-Reference,点击Add,选择TypeLib,找到UFT安装目录下的bin-QTObjectModel.dll文件打开;

选择Prog ID,输入选择Quick Test.Application

 举例:在Vbs.Edit里面编程使用AOM的方式来控制执行QTP/UFT脚本

Dim qtapp
'创建qtp对象
Set qtapp = CreateObject("quicktest.application")
qtapp.lunch  '启动QTP
 
 
qtapp.Visuable = True '使UFT应用可见
'打开QTP/UFT脚本所在的路径
qtapp.open "C:\GUITest1"
qtapp.Test.Run '运行脚本
qtapp.Test.Close '关闭脚本
qtapp.quit '退出qtapp对象
Set qtapp = Nothing '释放资源

14.其他

Execute

用来动态执行任何定义在字符串内的内容。

Execute [statement] 在局部范围执行

Dim x
Execute "x=2"
MsgBox x

 结果:2

ExecuteGlobal 在全局范围执行

在VBScript中,可以用ExecuteGlobal语句来在一个脚本文件中加载另外一个脚本的函数,例如,假设需要加载的是脚本Test.vbs:
Function Test1
 Msgbox "Test1"
End Function

那么可以在脚本ExecuteGlobal.vbs中按下面的方式加载并调用Test1函数:
Set fso = CreateObject("Scripting.FilesyStemObject")
Str = fso.OpenTextFile("Test.vbs", 1).ReadAll
ExecuteGlobal Str
Set fso = Nothing

UFT:

Eval

Eval函数用来判断一个语句

Exit

Exit 语句的语法有以下几种形式:

语句描述
Exit Do提供一种退出 Do...Loop 语句的方法。只能在 Do...Loop 语句中使用。Exit Do 将控制权转移到 Loop 语句之后的语句。在嵌套的 Do...Loop 语句中使用时,Exit Do 将控制权转移到循环所在位置的上一层嵌套循环。
Exit For提供一种退出 For 循环的方法。只能在 For...Next 或 For Each...Next 循环中使用。Exit For 将控制权转移到 Next 之后的语句。在嵌套的 For 循环中使用时,Exit For 将控制权转移到循环所在位置的上一层嵌套循环。
Exit Function立即从出现的位置退出 Function 过程。继续执行调用 Function 的语句后面的语句。
Exit Property立即从所在的 Property 过程中退出。继续执行下面调用 Property 过程的语句。
Exit Sub立即从出现的位置退出 Sub 过程,继续执行调用 Sub 的语句后面的语句。

原创来源:VBS教程总结_nee~的博客-CSDN博客_vbs代码教程 

  • 7
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vbs脚本编程简明教程之一—为什么要使用Vbs? ◎Vbs脚本编程简明教程之二—如何开始第一个Vbs脚本? ◎Vbs脚本编程简明教程之四—如何利用Vbs运行外部程序? ◎Vbs脚本编程简明教程之五—错误处理 ◎Vbs脚本编程简明教程之六—修改注册表 ◎Vbs脚本编程简明教程之七—FSO的常见对象和方法 ◎Vbs脚本编程简明教程之八—FSO中文件夹的基本操作 ◎Vbs脚本编程简明教程之九—妙用SendKeys简化重复操作1 ◎Vbs脚本编程简明教程之九—妙用SendKeys简化重复操作2 ◎Vbs脚本编程简明教程之九—妙用SendKeys自动上网并登陆博客3 ◎Vbs脚本编程简明教程之十—Vbs脚本编程常用的编辑器 ◎Vbs脚本编程简明教程之十一——FSO中文件的基本操作 ◎Vbs脚本编程简明教程之十二—使用系统对话框 ◎Vbs脚本编程简明教程之十三—WMI基础之一 ◎Vbs脚本应用——打造个性化QQ ◎Vbs脚本编程简明教程补充读物-初窥WMI(转载) ◎Vbs脚本编程简明教程之十三—WMI基础之二—阻止客人运行你不想运行的程序 ◎Vbs脚本编程简明教程之十四—使用dictionary对象 ◎Vbs脚本编程简明教程之十五—VBS内置函数之一 ◎Vbs脚本编程简明教程之十五—VBS内置函数之二 ◎Vbs脚本编程简明教程之十五—VBS内置函数之三 ◎Vbs脚本编程简明教程之十六——响应事件 ◎Vbs脚本编程简明教程之十七——访问ADO数据库之一 ◎Vbs脚本编程简明教程之十七——访问ADO数据库之二 ◎Vbs脚本编程简明教程之十七——访问ADO数据库之三 ◎WMI轻松入门之一——基本概念 ◎WMI轻松入门之二——连接到指定的CIM命名空间 ◎WMI轻松入门之三——获得类的实例 ◎WMI轻松入门之四——解析类定义 ◎简单WSC组件的基本结构 ◎使用脚本部件向导简化WSC设计
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值