首页 > 编程 > VBScript > 正文

vbs/js脚本编程教学(1)

2020-06-26 18:03:39
字体:
来源:转载
供稿:网友
脚本编程教学(1) 

  
论坛上好多朋友都问关于脚本的问题,正好最近对脚本比较有兴趣,就写点东西吧。首先说明一下,我的所有代码都是 
vbscript,jscript我没有研究过,不过我想也差不多。 

关于最基础的语法比如变量的申明,分支,循环,函数的调用,等等这些我就不讲了,不懂得自己看一下。 

1、我们的第一个vbs程序:还是那个老得掉牙的冬冬。 

************************hello.vbs************************** 

dim hello 

hello=”hello world!” 

wscript.echo hello 

wscript echo “ this is my first vbs” 

可以看出wscript.echo有两种用法,这个不难。 

可以直接双击运行,可以在当前目录的命令行输入: 

cscript hello.vbs 

  

2、在脚本中调用其他的程序: 

使用run()方法,在使用前必须先建立shell的实例 

********************shell.vbs****************************************** 

set ws=wscript.createobject("wscript.shell") 

ret=ws.run ("notepad" ,3,true) 

if ret=0 then 

wscript.echo “succeed!” 

else  

wscript.echo “there is a error,the error number is:” 

wscript.echo  cstr(ret) 

end if  

*************************************************************************** 

这里run 有三个参数,第一个参数是你要执行的程序的路径 

第二个程序是窗口的形式,0是在后台运行; 

1表示正常运行 

2表示激活程序并且显示为最小化 

3表示激活程序并且显示为最大化 

   一共有10个这样的参数我只列出了4个最常用的。 

  第三个参数是表示这个脚本是等待还是继续执行,如果设为了true,脚本就会等待调用的程序退出后再向后执行。 

  注意到没有,我在run的前面还有一个接受返回值的变量,一般来说如果返回为0,表示成功执行,如果不为0,则这个 
返回值就是错误代码,可以通过这个代码找出相应的错误。 

  

3、inputbox 和msgbox 

会vb的人对着两个东西应该很熟悉,用法也没什么差别 

input=inputbox(“please enter you password”,”passwd”) 

if input<>”1234” 

then 

msgbox  “you enter a wrong passwd” 

end if  

当然你也可以给msgbox添加按钮,用一个变量接受用户的选择 

例如:ret=msgbox “continue?”,vbyesnocancel  

返回值和常量对照如下: 

vbok       1 

vbcancel    2 

vbabort     3 

vbretry      4 

vbignore    5 

vbyes       6 

vbno        7 

  

4、错误处理 

何vb一样用on error resume next 

这个没什么好说的,如果遇到了错误就跳过继续执行下一句 

当然这个方法很弱智,还需要有一个方法,vbscript提供了一个对象err对象 

他有两个方法clear,raise 

5个属性:description,helpcontext ,helpfile,number,source 

我们可以利用err.number获得错误号例如 

***********************err.vbs***************************** 

on error resume next 

a=11 

b=0 

c=a/b 

if err.number<>0 then 

wscript.echo err.number & err.description  & err.source 

end if  

我们可以用err.raisel来手工抛出错误 

比如我们要产生一个path not found的错误 告诉用户,他填写的路径不对 

on error resume next 

err.raise 76 

msgbox  "error :" & err.description 

err.clear 

  

  

以上都是基础,今天就写到这里吧,好累哦,呵呵呵 如有转载注明出处。明天给大家讲文件系统吧。 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表