当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > VBS教程:VBScript 基础-VBScript 过程

VBScript
TCP版backshell的VBS脚本代码
VBS实现DOC转为文本文档的代码
一个用vbs查找硬盘所有分区中的指定程序的代码
用vbs操作注册表实例代码
用VBS来代替BAT或CMD文件进行命令
禁止QQ上网的vbs脚本代码
用vbs实现注册表开关的脚本
用vbs实现解除注册表CMD、Regedit、Taskmgr限制的脚本代码
自己写的一个定时关机或重启的vbs脚本
关于phpwind克隆用户的方法
vbs中的LoadPicture函数示例
vbs循环产生的参数的传递问题
vbs病毒源文件
海阳顶端网进百度blog必须输入密码的vbscript代码
关于脚本调用外部对像和类型库
学习 WSH 的理由小结
vbscript sendkeys实例代码大全
xp、2003开3389+非net创建管理用户+Shift后门+自删除脚本vbs
Vbs脚本实现radmin终极后门代码_删除自身
vbs实现恢复暂停的自动启动服务的脚本

VBS教程:VBScript 基础-VBScript 过程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 65 ::
收藏到网摘: n/a

VBScript 过程

在 VBScript 中,过程被分为两类:Sub 过程和 Function 过程。

Sub 过程

Sub 过程是包含在 SubEnd Sub 语句之间的一组 VBScript 语句,执行操作但不返回值。Sub 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果 Sub 过程无任何参数,则 Sub 语句必须包含空括号 ()。

下面的 Sub 过程使用两个固有的(或内置的)VBScript 函数,即 MsgBox 和 InputBox,来提示用户输入信息。然后显示根据这些信息计算的结果。计算由使用 VBScript 创建的 Function 过程完成。此过程在以下讨论之后演示。

 Sub ConvertTemp() temp = InputBox("请输入华氏温度。", 1) MsgBox "温度为 " & Celsius(temp) & " 摄氏度。" End Sub

Function 过程

Function 过程是包含在 FunctionEnd Function 语句之间的一组 VBScript 语句。Function 过程与 Sub 过程类似,但是 Function 过程可以返回值。Function 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果 Function 过程无任何参数,则 Function 语句必须包含空括号 ()。Function 过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。Function 返回值的数据类型总是 Variant

在下面的示例中,Celsius 函数将华氏度换算为摄氏度。Sub 过程 ConvertTemp 调用此函数时,包含参数值的变量被传递给函数。换算结果返回到调用过程并显示在消息框中。

 Sub ConvertTemp() temp = InputBox("请输入华氏温度。", 1) MsgBox "温度为 " & Celsius(temp) & " 摄氏度。" End Sub Function Celsius(fDegrees) Celsius = (fDegrees - 32) * 5 / 9 End Function

过程的数据进出

给过程传递数据的途径是使用参数。参数被作为要传递给过程的数据的占位符。参数名可以是任何有效的变量名。使用 Sub 语句或 Function 语句创建过程时,过程名之后必须紧跟括号。括号中包含所有参数,参数间用逗号分隔。例如,在下面的示例中,fDegrees 是传递给 Celsius 函数的值的占位符:

 Function Celsius(fDegrees) Celsius = (fDegrees - 32) * 5 / 9 End Function

要从过程获取数据,必须使用 Function 过程。请记住,Function 过程可以返回值;Sub 过程不返回值。

在代码中使用 Sub 和 Function 过程

调用 Function 过程时,函数名必须用在变量赋值语句的右端或表达式中。例如:

 Temp = Celsius(fDegrees)

 MsgBox "温度为 " & Celsius(fDegrees) & " 摄氏度。"

调用 Sub 过程时,只需输入过程名及所有参数值,参数值之间使用逗号分隔。不需使用 Call 语句,但如果使用了此语句,则必须将所有参数包含在括号之中。

下面的示例显示了调用 MyProc 过程的两种方式。一种使用 Call 语句;另一种则不使用。两种方式效果相同。

 Call MyProc(firstarg, secondarg) MyProc firstarg, secondarg

请注意当不使用 Call 语句进行调用时,括号被省略。