- 帖子
- 1061
- 积分
- 1562
- 技术
- 112
- 捐助
- 0
- 注册时间
- 2010-4-30
|
4楼
发表于 2012-9-28 15:19
| 只看该作者
本帖最后由 czjt1234 于 2012-10-30 12:16 编辑
WScript 对象的 Arguments 属性创建 WshArguments 对象
WshArguments 对象提供对整个命令行参数集的访问
属性
Item 缺省属性。显示指定的项目
Count 参数的个数
Named 已命名的参数。比如 test.vbs /c:"aaa" 。返回 WshNamed 对象
Unnamed 未命名的参数。比如 test.vbs "aaa" 。返回 WshUnnamed 对象
方法
ShowUsage 在.wsf脚本文件里用以显示使用说明。在.vbs脚本文件里没实际用处
'-------------------------------------------------------------
WshArguments 对象的 Named 属性返回 WshNamed 对象
WshNamed 对象提供对已命名的参数的访问
属性
Item 显示指定的项目
Count 参数的个数
方法
Exists 查询某个命名参数是否存在。返回True|False
'-------------------------------------------------------------
WshArguments 对象的 Unnamed 属性返回 WshUnnamed 对象
WshUnnamed 对象提供对未命名的参数的访问
属性
Item 显示指定的项目
Count 参数的个数
方法
(无)
'-------------------------------------------------------------
下面是 WshArguments WshNamed WshNamed 对象的属性和方法的参数,及用法举例
代码测试环境:winxpsp3 IE8 Wscript版本5.7.0.18066
'-------------------------------------------------------------
新建 d:\test.vbs,代码如下:
Dim objArguments, objArgsNamed, objArgsUnnamed, intNumber
Set objArguments = WScript.Arguments
Set objArgsNamed = objArguments.Named
Set objArgsUnnamed = objArguments.Unnamed
MsgBox "共有参数 " & objArguments.count & "个" & vbCrLf & vbCrLf & _
"命名参数 " & objArgsNamed.count & "个" & vbCrLf & vbCrLf & _
"未命名参数 " & objArgsUnnamed.count & "个"
If objArgsNamed.Exists("C") Then
MsgBox "命名为 C 的参数: " & objArgsNamed.Item("C")
End If
objArguments.ShowUsage '弹出一个信息框。没啥用。在.wsf脚本文件里有用
MsgBox "枚举全部参数:"
For intNumber = 0 To objArguments.count - 1
MsgBox objArguments.Item(intNumber)
Next
MsgBox "枚举未命名参数:"
For intNumber = 0 To objArgsUnnamed.count - 1
MsgBox objArgsUnnamed.Item(intNumber)
Next
运行命令行
d:\test.vbs /c:CCC /d:"d f" "a s" 1 q
对照运行结果,可以看出vbs命令行参数的含义
'------------------------------------------------------------- |
|