目录
1. VBScript 概述
VBScript(Visual Basic Scripting Edition)是微软公司为 Windows 操作系统设计的轻量级脚本语言,广泛应用于自动化任务、系统管理、文件处理和网页脚本编程。VBScript 语法与 Visual Basic 语言类似,但更简化,主要用于 Windows 脚本宿主(WSH) 和 网页 编程。
特点:
- 简易学习,与 VB 语言相似,易于理解。
- 跨平台支持:只能在 Windows 环境下运行。
- 适合自动化任务,如系统管理和批处理脚本。
2. 基本语法与结构
2.1 注释
- 单行注释使用
'
' 这是单行注释
2.2 代码结构
VBScript 没有强制的块结构,代码块通常用 Sub
或 Function
组织。
Sub DisplayMessage()
MsgBox "Hello, World!"
End Sub
3. 变量与数据类型
3.1 变量声明
VBScript 中变量是动态类型的,通常使用 Dim
关键字声明变量。
Dim message
message = "Hello, VBScript!"
3.2 数据类型
VBScript 变量数据类型为 Variant,可以存储不同类型的值。以下是常见的数据类型:
- Integer:整数类型
- String:字符串类型
- Boolean:布尔类型(
True
或False
) - Date:日期时间类型
- Double:双精度浮点类型
3.3 类型转换
可以使用内置的转换函数,如 CStr
、CInt
、CDbl
等。
Dim num, str
num = 100
str = CStr(num) ' 转换为字符串
4. 运算符
4.1 算术运算符
Dim a, b, result
a = 5
b = 10
result = a + b ' 15
result = a - b ' -5
result = a * b ' 50
result = b / a ' 2
result = b Mod a ' 0
4.2 比较运算符
Dim x, y
x = 5
y = 10
If x = y Then
MsgBox "x 和 y 相等"
Else
MsgBox "x 和 y 不相等"
End If
5. 条件语句
5.1 If…Then…Else
Dim score
score = 80
If score >= 60 Then
MsgBox "及格"
Else
MsgBox "不及格"
End If
5.2 Select Case
Dim grade
grade = "B"
Select Case grade
Case "A"
MsgBox "优秀"
Case "B"
MsgBox "良好"
Case "C"
MsgBox "及格"
Case Else
MsgBox "不及格"
End Select
6. 循环结构
6.1 For…Next
Dim i
For i = 1 To 5
MsgBox "第 " & i & " 次循环"
Next
6.2 Do…Loop
Dim count
count = 1
Do While count <= 3
MsgBox "当前循环次数:" & count
count = count + 1
Loop
7. 函数与子过程
7.1 函数
Function AddNumbers(a, b)
AddNumbers = a + b
End Function
Dim result
result = AddNumbers(10, 20)
MsgBox result ' 输出 30
7.2 子过程
Sub ShowMessage()
MsgBox "Hello from Sub!"
End Sub
Call ShowMessage()
8. 文件操作
8.1 读取文件
Dim fso, file
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile("C:\test.txt", 1)
Do Until file.AtEndOfStream
MsgBox file.ReadLine
Loop
file.Close
8.2 写入文件
Dim fso, file
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.CreateTextFile("C:\test.txt", True)
file.WriteLine "Hello, VBScript!"
file.Close
9. Windows 脚本编程
9.1 创建 WScript.Shell 对象
Dim objShell
Set objShell = CreateObject("WScript.Shell")
objShell.Run "notepad.exe"
9.2 操作注册表
Dim objShell
Set objShell = CreateObject("WScript.Shell")
objShell.RegWrite "HKCU\Software\TestKey\", "TestValue", "REG_SZ"
9.3 控制程序运行
Dim objShell
Set objShell = CreateObject("WScript.Shell")
objShell.Run "shutdown /s /f /t 0" ' 立即关机
10. VBScript 在网页中的应用
VBScript 可以嵌入到 HTML 中进行网页编程,但需要注意现代浏览器已经停止对 VBScript 的支持。
<html>
<head>
<script language="VBScript">
MsgBox "VBScript in HTML"
</script>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
11. 错误处理
11.1 使用 On Error Resume Next
On Error Resume Next
Dim x
x = 1 / 0 ' 除零错误
If Err.Number <> 0 Then
MsgBox "错误:" & Err.Description
End If
11.2 使用 On Error GoTo
On Error GoTo ErrorHandler
' 主程序代码
Exit Sub
ErrorHandler:
MsgBox "发生错误:" & Err.Description
发表回复