一些VBScript代码片段

    VBScript是Visual Basic Script的简称,有时也被缩写为VBS,是微软开发的一种脚本语言,可以看作是VB语言的简化版,它的语言Javascript基本相同,在电脑上实现一些应用比较方便。详细的教程请见微软公司的网页:http://www.microsoft.com/china/vbscript/vbslang/vbstoc.htm

    下面是一些vbs的一些代码,比较有用处:

    1、程序中断退出:

a=inputbox(“请输入数字,1则直接退出VBS,输入其他字符则VBS继续执行下去”)
if a=”1″ then Wscript.quit
msgbox “你输入的不是1”

    在对话框中输入1,那么程序中断,假如不是1,那么显示“你输入的不是1”。

 

    2、取当前路径:

test = createobject(“Scripting.FileSystemObject”).GetFolder(“.”).Path
msgbox “本文件所在的目录是:”&test

    运行脚本,跳出对话框:image,表示本脚本所处的路径。

 

    3、调用capicom.dll计算哈希值:

‘调用capicom.dll计算哈希值
Const CAPICOM_HASH_ALGORITHM_MD2 = 1
Const CAPICOM_HASH_ALGORITHM_MD4 = 2
Const CAPICOM_HASH_ALGORITHM_MD5 = 3
Const CAPICOM_HASH_ALGORITHM_SHA1 = 0
Const CAPICOM_HASH_ALGORITHM_SHA_256 = 4
Const CAPICOM_HASH_ALGORITHM_SHA_384 = 5
Const CAPICOM_HASH_ALGORITHM_SHA_512 = 6

‘将字符转化为二进制格式
Function str2strb(str)
For i = 1 to Len(str)
tmp = Mid(str, i, 1)
restr = restr & chrB(ascB(tmp))
Next
str2strb = restr
End Function
 
‘函数hash()
Function hash(str)
Dim HashedData
Set HashedData = CreateObject(“CAPICOM.HashedData”)
HashedData.Algorithm = CAPICOM_HASH_ALGORITHM_SHA_512 ‘将“SHA_512”换成“MD5”就可以计算MD5码了
HashedData.Hash str2strb(str)
hash=LCase(HashedData.Value) ‘LCase()表示返回小写字符
End Function

x=inputbox(“请输入需要计算哈希值的字符串”)
WScript.Echo hash(x)

    运行脚本后,在对话框中输入字符,会输出SHA512校验码,将上面红色部分换乘MD5就可以计算MD5码了。

 

    4、发送电子邮件:

function Send_mail(You_Account,You_Password,Send_Email,Send_Email2,Send_Topic,Send_Body,Send_Attachment)
‘VBS发送邮件参数说明
‘You_Account:你的邮件帐号
‘You_Password:你的邮件密码
‘Send_Email: 主要邮件地址
‘Send_Email2: 备用邮件地址
‘Send_Topic: 邮件主题
‘Send_Body:邮件内容
‘Send_Attachment:邮件附件

You_ID=Split(You_Account, “@”, -1, vbTextCompare)
‘帐号和服务器分离
MS_Space = “http://schemas.microsoft.com/cdo/configuration/”
‘这个是必须要的,不过可以放心的事,不会通过微软发送邮件
Set Email = CreateObject(“CDO.Message”)
Email.From = You_Account
‘这个一定要和发送邮件的帐号一样
Email.To = Send_Email         ‘主要邮件地址
If Send_Email2 <> “” Then
Email.CC = Send_Email2        ‘备用邮件地址
End If
Email.Subject = Send_Topic        ‘邮件主题
Email.Textbody = Send_Body        ‘邮件内容
If Send_Attachment <> “” Then
Email.AddAttachment Send_Attachment     ‘邮件附件
End If
With Email.Configuration.Fields
.Item(MS_Space&”sendusing”) = 2       ‘发信端口
.Item(MS_Space&”smtpserver”) = “smtp.”&You_ID(1) ‘SMTP服务器地址
.Item(MS_Space&”smtpserverport”) = 25     ‘SMTP服务器端口
.Item(MS_Space&”smtpauthenticate”) = 1     ‘cdobasec
.Item(MS_Space&”sendusername”) = You_ID(0)    ‘你的邮件帐号
.Item(MS_Space&”sendpassword”) = You_Password   ‘你的邮件密码
.Update
End With
Email.Send
‘发送邮件
Set Email=Nothing
‘关闭组件
End Function

    内置函数大全:

Abs 函数:返回数的绝对值。

Array 函数:返回含有数组的变体。

Asc 函数:返回字符串首字母的 ANSI 字符码。

Atn 函数:返回数值的反正切。

CBool 函数:返回已被转换为 Boolean 子类型的变体的表达式。

CByte 函数:返回已被转换为字节子类型的变体的表达式。

CCur 函数:返回已被转换为货币子类型的变体的表达式。

CDate 函数:返回已被转换为日期子类型的变体的表达式。

CDbl 函数:返回已被转换为双精度子类型的变体的表达式。

Chr 函数:返回与指定的 ANSI 字符码相关的字符。

CInt 函数:返回已被转换为整形子类型的变体的表达式。

CLng 函数;返回已被转换为Long子类型的变体的表达式。

Cos 函数:返回角度的余弦。

CreateObject 函数:创建并返回对“自动”对象的引用。

CSng 函数:返回已被转换为单精度子类型的变体的表达式。

CStr 函数:返回已被转换为字符串子类型的变体的表达式。

Date 函数:返回当前系统日期。

DateAdd 函数:返回的日期已经加上了指定的时间间隔。

DateDiff 函数:返回两个日期之间的间隔。

DatePart 函数:返回给定日期的指定部分。

DateSerial 函数:返回指定年月日的日期子类型的变体。

DateValue 函数:返回日期子类型的变体。

Day 函数:返回日期,取值范围为 1 至 31。

Eval 函数:计算表达式并返回结果。

Exp 函数:返回 e (自然对数的底) 的多少次方。

Filter 函数:根据指定的筛选条件,返回含有字符串数组子集的、下限为 0 的数组。

Fix 函数:返回数的整数部分。

FormatCurrency 函数:返回的表达式为货币值格式,其货币符号采用系统控制面板中定义的。

FormatDateTime 函数:返回的表达式为日期和时间格式。

FormatNumber 函数:返回的表达式为数字格式。

FormatPercent 函数:返回的表达式为百分数(乘以 100)格式,后面有 % 符号。

GetObject 函数:返回从文件对“自动”对象的引用。

GetRef 函数:返回对能够绑定到一事件的过程的引用。

Hex 函数:返回一字符串,代表一个数的十六进制值。

Hour 函数:返回表示钟点的数字,取值范围为 0 至 23。

InputBox 函数:在对话框中显式一提示,等待用户输入文本或单击按钮,并返回文本框的内容。

InStr 函数:返回一个字符串在另一个字符串中首次出现的位置。

InStrRev 函数;返回一个字符串在另一个字符串中出现的位置,但是从字符串的尾部算起。

Int 函数:返回数的整数部分。

IsArray 函数:返回 Boolean 值,反映变量是否为数组。

IsDate 函数:返回 Boolean 值,反映表达式能否转换为日期。

IsEmpty 函数:返回 Boolean 值,反映变量是否已被初始化。

IsNull 函数:返回 Boolean 值,反映表达式是否含有无效数据(Null)。

IsNumeric 函数:返回 Boolean 值,反映表达式能否转换为数字。

IsObject 函数:返回 Boolean 值,反映表达式是否引用了有效的“自动”对象。

Join 函数:返回通过连接许多含有数组的子串而创建的字符串。

LBound 函数;返回指定维数数组的最小有效下标。

LCase 函数:返回的字符串已被转换为小写字母。

Left 函数:返回字符串最左边的指定数量的字符。

Len 函数:返回字符串中的字符数或存储变量所需的字节数。

LoadPicture 函数:返回图片对象。只用于 32 位平台。

Log 函数:返回数的自然对数。

LTrim 函数;返回去掉前导空格的字符串。

Mid 函数:从字符串中返回指定数量的字符。

Minute 函数:返回分钟数,取值范围为 0 至 59。

Month 函数:返回表示月份的数,取值范围为 1 至 12。

MonthName 函数:返回表示月份的字符串。

MsgBox 函数:在对话框中显示消息,等待用户单击按钮,并返回表示用户所击按钮的数值。

Now 函数:返回计算机的当前系统日期和时间。

Oct 函数:返回表示该数八进制数值的字符串。

Replace 函数:返回一字符串,其中指定的子串已被另一个子串替换了规定的次数。

RGB 函数:返回代表 RGB 颜色值的数字。

Right 函数:返回字符串最右边的指定数量的字符。

Rnd 函数:返回随机数。

Round 函数:返回指定位数、四舍五入的数。

RTrim 函数:返回去掉尾部空格的字符串副本。

ScriptEngine 函数:返回反映使用中的脚本语言的字符串。

ScriptEngineBuildVersion 函数:返回使用中的脚本引擎的编译版本号。

ScriptEngineMajorVersion 函数:返回使用中的脚本引擎的主版本号。

ScriptEngineMinorVersion 函数:返回使用中的脚本引擎的次版本号。

Second 函数:返回秒数,取值范围为 0 至 59。

Sgn 函数:返回反映数的符号的整数。

Sin 函数:返回角度的正弦值。

Space 函数:返回由指定数量的空格组成的字符串。

Split 函数:返回下限为 0 的、由指定数量的子串组成的一维数组。

Sqr 函数:返回数的平方根。

StrComp 函数:返回反映字符串比较结果的数值。

String 函数:返回指定长度的重复字符串。

StrReverse 函数:返回一字符串,其中字符的顺序与指定的字符串中的顺序相反。

Tan 函数:返回角度的正切值。

Time 函数:返回表示当前系统时间的“日期”子类型的“变体”。

Timer 函数:返回时经子夜 12:00 AM 后的秒数。

TimeSerial 函数:返回含有指定时分秒时间的日期子类型的变体。

TimeValue 函数:返回含有时间的日期子类型的变体。

Trim 函数:返回去掉前导空格或尾部空格的字符串副本。

TypeName 函数:返回一字符串,它提供了关于变量的变体子类型信息。

UBound 函数:返回指定维数数组的最大有效下标。

UCase 函数:返回的字符串已经被转换为大写字母。

VarType 函数:返回标识变体子类型的数值。

Weekday 函数:返回表示星期几的数值。

WeekdayName 函数:返回表示星期几的字符串。

Year 函数:返回表示年份的数值。

发表评论