通过本文主要向大家介绍了vbscript脚本语言,无法找到脚本vbscript,vbscript脚本,脚本引擎vbscript,vbscript编程等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
by sssa2000
7/4/2004
论坛上好多朋友都问关于脚本的问题,正好最近对脚本比较有兴趣,就写点东西吧。首先说明一下,我的所有代码都是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脚本编程教程2
by sssa2000
7/7/2004
我们来看一看怎么利用fso来进行文件操作。Fso时vbs里进行文件操作的核心。作为黑客,不管学习什么语言,对文件的操作都应该是要了如指掌的,所以请大家仔细学习。
不说废话,先看fso由哪几个对象组成:
drive对象:包含储存设备的信息,包括硬盘,光驱,ram盘,网络驱动器
drives集合:提供一个物理和逻辑驱动器的列表
file 对象:检查和处理文件
files 集合:提供一个文件夹中的文件列表
folder对象:检查和处理文件夹
folders集合:提供文件夹中子文件夹的列表
textstream对象:读写文本文件
看看fso的方法:由于很多,所以我不会把每个的作用写出来,如果有不懂的,自己查一下msdn。不要说没有哦
bulidpath:把文件路径信息添加到现有的文件路径上
copyfile
copyfolder
createfolder
createtextfile
deletefile
deletefolder
dreveexits
fileexits
folderexists
getabsolutepathname:返回一个文件夹或文件的绝对路径
getbasename:返回一个文件或文件夹的基本路径
getdrive:返回一个dreve对象
getdrivename:返回一个驱动器的名字
getextensionname:返回扩展名
getfile:返回一个file对象
getfilename:返回文件夹中文件名称
getfolder
getparentfoldername:返回一个文件夹的父文件夹
getspecialfolder:返回指向一个特殊文件夹的对象指针
gettempname:返回一个可以被createtextfile使用的随机产生的文件或文件夹的名称
movefile
movefolder
opentextfile
好了,看到这里我想大家也明白了一大半,可能后面都不用我多说了,脚本就是这么简单,呵呵呵,还是继续把。
1、使用fso
由于fso不是wsh的一部分,所以我们需要建立他的模型
例如set fs=wscript.createobject(“scripting.filesystemobject”)
这样就建立了fso的模型。如果要释放的话也很简单,set fs=nothing
2、使用文件夹
创建:
在创建前我们需要检查是否存在,看一下程序
***************************createfolder.vbs*****************************
dim fs,s
set fs=wscript.createobject(“scripting.filesystemobject”)
if (fs.folderexists(“c:\temp”)) then
s=”is available”
else
s=”not exist”
set foldr=fs.createfolder(“c:\temp”)
end if
删除、拷贝、移动
删除:
set fs=wscript.createobject(“scripting.filesystemobject”)
fs.deletefolder(“c:\windows”)
拷贝:
set fs=wscript.createobject(“scripting.filesystemobject”)
fs.copyfolder “c:\data” “d:\data”
注意,如果这个时候c:\data 和d:\data都存在,会出错,复制也就会停止,如果要强制覆盖,使用fs.copyfolder “c:\data” “d:\data”,true
移动
set fs=wscript.createobject(“scripting.filesystemobject”)
fs.movefolder “c:\data” “d:\data”
关于通配符:
我们可以使用统配符,来方便操作:
例如, fs.movefolder :c:\data\te*” , “d:\working”
注意到没有,我在目的路径最后没有使用“\” 也就是说我没有这样写:
fs.movefolder :c:\data\te*” , “d:\working\”
这样写的话,如果d:\working 目录不存在,windows就不会为我们自动创建这个目录。
还有一点,大家注意到没有 上面说的都没有涉及到folder对象,我们都是在利用fso提供的方法,当然利用folder一样可以的:
set fs= wscript.createobject(“scripting.filesystemobject”)
set f=fs.getfolder(“c:\data”)
f.delete ‘删除。如果有子目录,也会被删除
f.copy “d:\working”,true ‘拷贝到d:\working
f.move :”d:\temp” ‘移动到d:\temp
特殊文件夹
一般指的就是系统文件夹:\windows\system32, 临时文件夹,windows文件夹
看下面,我们使用环境变量来获得windows目录,关
7/4/2004
论坛上好多朋友都问关于脚本的问题,正好最近对脚本比较有兴趣,就写点东西吧。首先说明一下,我的所有代码都是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脚本编程教程2
by sssa2000
7/7/2004
我们来看一看怎么利用fso来进行文件操作。Fso时vbs里进行文件操作的核心。作为黑客,不管学习什么语言,对文件的操作都应该是要了如指掌的,所以请大家仔细学习。
不说废话,先看fso由哪几个对象组成:
drive对象:包含储存设备的信息,包括硬盘,光驱,ram盘,网络驱动器
drives集合:提供一个物理和逻辑驱动器的列表
file 对象:检查和处理文件
files 集合:提供一个文件夹中的文件列表
folder对象:检查和处理文件夹
folders集合:提供文件夹中子文件夹的列表
textstream对象:读写文本文件
看看fso的方法:由于很多,所以我不会把每个的作用写出来,如果有不懂的,自己查一下msdn。不要说没有哦
bulidpath:把文件路径信息添加到现有的文件路径上
copyfile
copyfolder
createfolder
createtextfile
deletefile
deletefolder
dreveexits
fileexits
folderexists
getabsolutepathname:返回一个文件夹或文件的绝对路径
getbasename:返回一个文件或文件夹的基本路径
getdrive:返回一个dreve对象
getdrivename:返回一个驱动器的名字
getextensionname:返回扩展名
getfile:返回一个file对象
getfilename:返回文件夹中文件名称
getfolder
getparentfoldername:返回一个文件夹的父文件夹
getspecialfolder:返回指向一个特殊文件夹的对象指针
gettempname:返回一个可以被createtextfile使用的随机产生的文件或文件夹的名称
movefile
movefolder
opentextfile
好了,看到这里我想大家也明白了一大半,可能后面都不用我多说了,脚本就是这么简单,呵呵呵,还是继续把。
1、使用fso
由于fso不是wsh的一部分,所以我们需要建立他的模型
例如set fs=wscript.createobject(“scripting.filesystemobject”)
这样就建立了fso的模型。如果要释放的话也很简单,set fs=nothing
2、使用文件夹
创建:
在创建前我们需要检查是否存在,看一下程序
***************************createfolder.vbs*****************************
dim fs,s
set fs=wscript.createobject(“scripting.filesystemobject”)
if (fs.folderexists(“c:\temp”)) then
s=”is available”
else
s=”not exist”
set foldr=fs.createfolder(“c:\temp”)
end if
删除、拷贝、移动
删除:
set fs=wscript.createobject(“scripting.filesystemobject”)
fs.deletefolder(“c:\windows”)
拷贝:
set fs=wscript.createobject(“scripting.filesystemobject”)
fs.copyfolder “c:\data” “d:\data”
注意,如果这个时候c:\data 和d:\data都存在,会出错,复制也就会停止,如果要强制覆盖,使用fs.copyfolder “c:\data” “d:\data”,true
移动
set fs=wscript.createobject(“scripting.filesystemobject”)
fs.movefolder “c:\data” “d:\data”
关于通配符:
我们可以使用统配符,来方便操作:
例如, fs.movefolder :c:\data\te*” , “d:\working”
注意到没有,我在目的路径最后没有使用“\” 也就是说我没有这样写:
fs.movefolder :c:\data\te*” , “d:\working\”
这样写的话,如果d:\working 目录不存在,windows就不会为我们自动创建这个目录。
还有一点,大家注意到没有 上面说的都没有涉及到folder对象,我们都是在利用fso提供的方法,当然利用folder一样可以的:
set fs= wscript.createobject(“scripting.filesystemobject”)
set f=fs.getfolder(“c:\data”)
f.delete ‘删除。如果有子目录,也会被删除
f.copy “d:\working”,true ‘拷贝到d:\working
f.move :”d:\temp” ‘移动到d:\temp
特殊文件夹
一般指的就是系统文件夹:\windows\system32, 临时文件夹,windows文件夹
看下面,我们使用环境变量来获得windows目录,关

