手机
当前位置:查字典教程网 >脚本专栏 >vbs >灵活实用VBS入门教程应用篇
灵活实用VBS入门教程应用篇
摘要:上一篇文章我们了解了VBS编程的一些基础知识,要更深入地学习还要学习选择结构和循环结构。选择结构选择结构,即是对条件进行判断,然后根据判断的...

上一篇文章我们了解了VBS编程的一些基础知识,要更深入地学习还要学习选择结构和循环结构。

选择结构

选择结构,即是对条件进行判断,然后根据判断的结果,选择执行不同的分支的结构。常见的有IF条件语句和SelectCase语句。

●IF条件语句

IF条件语句又有多种具体的形式,如If…Then、If…Then…Else、If…Then…ElseIf。下面分别用例程来说明。用笔记本编写一个如下内容的VBS脚本:

dima,b

a=inputbox("输入第一个数字","输入")

b=inputbox("输入第二个数字","输入")

ifa>bthen

MsgBox("第一个数大于第二个数")

Endif

运行后,要求用户输入两个数字,第一个数字的值赋给a,第二个数字的值赋给b,然后程序自动判断a和b,如果a的值大于b的值,就弹出信息提示框,显示“第一个数大于第二个数”。注意:then后面的语句不与then在同一行时,判断语句结束后要加一行Endif来结束,否则程序会结束。如果是同一行的就不用再加上Endif了,如上面的语句可改为:

dima,b

a=inputbox("输入第一个数字","输入")

b=inputbox("输入第二个数字","输入")

ifa>bthenMsgBox("第一个数大于第二个数")

另外一个程序中可以用多个If语句,我们可以把上面的程序完善一下如下:

dima,b

a=inputbox("输入第一个数字","输入")

b=inputbox("输入第二个数字","输入")

Ifa>bthen

MsgBox("第一个数大于第二个数")

Endif

Ifa=bthen

MsgBox(“第一个数等于第二个数”)

Endif

Ifa<bthen

MsgBox(“第一个数小于第二个数”)

Endif

我们也可以再换用IF的其它语句If…Then…Else和If…Then….Elseif来实现相同的作用,如下:

dima,b

a=inputbox("输入第一个数字","输入")

b=inputbox("输入第二个数字","输入")

Ifa>bthen

MsgBox("第一个数大于第二个数")

Else

IFa=bthen

MsgBox(“第一个数等于第二个数”)

Else

MsgBox(“第一个数小于第二个数”)

Endif

Endif

――――――――――――――――――――――――――――――――――――――

dima,b

a=inputbox("输入第一个数字","输入")

b=inputbox("输入第二个数字","输入")

Ifa>bthen

MsgBox("第一个数大于第二个数")

Elseifa=bthen

MsgBox(“第一个数等于第二个数”)

Else

MsgBox(“第一个数小于第二个数”)

Endif

●SelectCase语句

SelectCase语句是多分支结构的另一种表示形式,它具有表示直观的特点,结构简单,不容易导致混乱,它的语法形式如下:

SelectCase变量或表达式

Case表达式1

语句1

Case表达式2

语句2

EndSelect

现在我们用SelectCase语句来写一个数字转换成英文的程序,体验一下SelectCase的优点,Let'sgo!!!

dima

a=inputbox("输入一个数字","输入")

SelectCasea

Case1

MsgBox("你输入的数英文是One")

Case2

MsgBox("你输入的数英文是Two")

Case3

MsgBox("你输入的数英文是Tree")

Case4

MsgBox("你输入的数英文是Four")

EndSelect

从上面,是不是觉得SelectCase语句很直观呢,如果用If语句的话,肯定会很混乱,甚至会把人都给看晕了。还要注意的是无论是条件语句有多少个分支,只要一个分支执行了,其余的分支就不再执行。

循环结构

●For循环语句

For语句是用来控制循环次数已知的循环结构的,语句如下:

For循环变量=初值To终值[步长]

语句

[Exitfor]'退出循环语句

Next

现在我们编写一个计算从1加到100的整数和的程序,深入去了解For的用法,程序内容如下:

dims

s=0

fori=1to100

s=s+i

next

msgbox(s)

这段程序也是经典的程序之一,它首先声明了一个变量S,然后给S赋个初始值0,fori=1to100语句让i随着每一次循环加1,循环体内的语句s=s+i也随着i的增加进行累加,一直加到i=100时结束循环。Next语句让循环体进入下一次循环。

●Do…loop循环语句

For循环语句用于控制循环次数已知的循环,而Do…loop则是用于控制次数未知的循环,根据设定的条件控制循环。它有两种形式,一种是先判断后执行,另一形式是先执行后判断。

先判断后执行语法形式:

Do[while/until条件]

语句

[ExitDo]‘退出循环

Loop

先执行后判断语法形式:

Do

语句

[ExitDo]

Loop[while/until条件]

下面我们用Do…Loop语句来改写上面的计算1到100的整数和的程序,如下:

先执行后判断式

dims

s=0

i=0

do

i=i+1

s=s+i

loopuntili>=100

msgbox(s)

先判断后执行式:

dims

s=0

i=0

dowhiles<100

i=i+1

s=s+i

loop

msgbox(s)

这两段程序很简单,很容易理解,在此就不再赘述了。

至此,VBS重要的语法结构以及语句已经粗略学习完毕,要更加深入细致系统地去研究,最好找相关的书籍看一下。下面将正式进行VBS编程网吧实战阶段。

实战篇

进行“实战”前我们先来理解什么是Shell对象和WSH。Shell对象就是微软对一些常用外壳操作函数的封装。象打开或浏览一个文件夹、查找文件、关闭计算机等等,而且还能浏览整个文件系统,获取文件或文件夹的各种信息。由于这些封装是建立在OLE自动化服务的基础之上,所以我们可以在VB、Web和VBS中方便的使用它们。WSH是WindowsScriptHost的缩写形式,WSH是Windows平台的脚本指令,它的功能十分强大,并且它利用JS和VBS脚本语言,来实现其卓越的功能的,除了修改注册表之外,它还可以访问Excel文件,也能与网络沟通,当然它最大的优势莫过于它能与操作系统沟通,而修改注册表只是它与操作系统沟通的冰山一角。正是它有如此诸多的优点与实用性,正倍受很多Windows用户的青睐。

上面说了WSH利用VBS可以修改系统注册表,但必须先创建一个能与操作系统沟通的对象,再利用该对象的各种方法对注册表进行操作,创建这个对象的方法和格式如下:

DimOperateReg

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

上面第一行声明了一个变量,而第二行则是利用声明的变量创建一个能与操作系统沟通的Shell对象OperateReg。

下面就来利用Shell对象来关闭一些会给网吧机子带来安全隐患的服务吧。

关闭默认共享

setds=createobject("wscript.shell")

ds.run"netstopserver/y"

关闭WMI服务

setswmi=createobject("wscript.shell")

swmi.run"netstopwmI/y"

禁用GUEST用户

setsg=createobject("wscript.shell")

sg.run"netuserguest/active:NO"

关闭telnet服务

setst=createobject("wscript.shell")

st.run"netstoptelnet"

利用VBS实现开机BAT延时和无黑屏

如果我们开机要执行名为bar.bat的批处理文件在远程服务器servernew中那么就在客户机的C盘根目录下建个批处理,将他命名为run.bat,内容如下:

ping127.0.0.1-n10(10表示你要延时的秒数自己根据需要进行设置)

callservernewbar.bat

保存后再在同目录下建个文本写上

setnb=createobject("wscript.shell")

nb.run"run.bat/start",0

保存成VBS文件然后将此文件加入到启动项,重启BAT延时和无黑屏就这样实现了。

以上都是VBS的一些简单的编程而已,如果能把VBS学到精通的话,你会发现它的功能非常的强大,很多复杂的功能都可以通过它来实现。现在很多网管都很乐于采用VBS编程来对网吧的机器进行管理。本系列三篇文章仅仅是对VBS进行了简单的了解和实例应用,大家要想更深入地去学习,还要靠平时的努力和积累,最后,祝大家早日可以把VBS学得炉火纯青。

【灵活实用VBS入门教程应用篇】相关文章:

VBS教程:函数-转换函数

VBS教程:函数-CBool 函数

VBS教程:对象-Err

VBS教程:函数-Asc 函数

VBS基础视频教程 批处理之家broly出品

VBS教程:VBScript 基础-使用条件语句

VBS教程:函数-Sgn 函数

VBS教程:函数-数学函数

VBS教程:对象-Folder 对象

VBS基础编程教程 (第6篇)

精品推荐
分类导航