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

所属分类: 脚本专栏 / vbs 阅读数: 1952
收藏 0 赞 0 分享
脚本编程教学(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

 

 

以上都是基础,今天就写到这里吧,好累哦,呵呵呵 如有转载注明出处。明天给大家讲文件系统吧。 

更多精彩内容其他人还在看

vbscript Split函数用法详解(字符串转数组函数)

本文详细介绍了vbscript中split函数的用法,有关split函数的一些实例,vbscript中split函数的语法介绍,有需要的朋友参考下
收藏 0 赞 0 分享

VBS实现将Excel表格保存为txt文本

希望能够找到个能给excel表另存为TXT的VBS代码,虽然另存为可以选择,但还是需要直接VBS执行这一步另存为TXT格式的,应该如何写代码呢
收藏 0 赞 0 分享

vbs解决处理TXT文本数据相关问题实现代码

使用vbs处理txt数据时,会遇到一些问题,本文将提供详细的解决方法,希望可以帮助你们
收藏 0 赞 0 分享

关于vbs 生成静态页面过程中出现的问题

访问某个aspx页面,然后把服务器返回的页面以filestream 的形式保存为html格式,接下来将介绍实现代码
收藏 0 赞 0 分享

dim函数第三个参数设置截取字符的长度问题

dim函数的第三个参数,也就是截取字符的长度,我在设置这个的时候,出了些问题,提示无效的过程调用或参数,本文详细介绍如何解决
收藏 0 赞 0 分享

邪恶的eval和new Function使用介绍

这些代码可以干什么?可以肯定的是可以干很多猥琐的事
收藏 0 赞 0 分享

WScript.Shell对象SpecialFolders属性未公开文档分享

WshShell对象的SpecialFolders属性返WshSpecialFolders 对象,该对象是一个特殊文件夹集合,其中包含整套Windows特殊文件夹
收藏 0 赞 0 分享

用VBS修改(设置)系统时间和日期的代码

用 VBS 把系统的时间修改到2038年1月19日3时14分07秒之后,这样某些依赖于 Unix 时间戳的程序就会出问题。那么怎样用 VBS 修改系统的时间呢
收藏 0 赞 0 分享

VBS For Next循环的一些细节

For Next 语句是 VBS 中常用的循环语句,你可能已经用过无数次 For Next 循环,但是你是否注意过它的一些细节呢
收藏 0 赞 0 分享

VBS For Next循环的陷阱分享

在《VBS For Next循环的一些细节》中说到了 For Next 循环的控制变量仅仅在循环开始前求值一次,但是其中存在一处陷阱
收藏 0 赞 0 分享
查看更多