news 2026/2/12 10:17:47

VBScript 用法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
VBScript 用法

VBScript 用法详解

VBScript(Visual Basic Scripting Edition)是一种简单易学的脚本语言,主要用于:

  • Windows 系统自动化(通过 .vbs 文件或 Windows Script Host)
  • 旧版 ASP 网页服务器端脚本
  • 自动化测试工具(如 HP UFT/QTP)

下面从实际用法角度详细说明常见场景、语法规则和实用示例。

1. 运行方式
  • 独立脚本文件:用记事本编写,保存为.vbs后缀,双击运行或用cscript/wscript执行。
    • wscript:图形界面(MsgBox 等弹出窗口)
    • cscript:命令行模式(适合后台运行)
  • 嵌入 HTML(仅旧版 IE 支持):
    <scripttype="text/vbscript">MsgBox"Hello"</script>
  • ASP 页面(服务器端):
    <% Response.Write "Hello World" %>
2. 基本语法规则
  • 不区分大小写
  • 语句以换行分隔,或用:分隔多条语句在一行
  • 注释用'Rem
  • 变量无需声明类型,直接赋值即可(默认 Variant 类型)
  • 推荐用Option Explicit强制声明变量,避免拼写错误
Option Explicit ' 强制声明变量,好习惯! Dim name Dim age name = "张三" age = 30 MsgBox "姓名:" & name & vbCrLf & "年龄:" & age
3. 常用内置函数和对象
函数/对象用法示例说明
MsgBoxMsgBox “提示内容”, vbInformation, “标题”弹出消息框
InputBoxstr = InputBox(“请输入姓名:”)获取用户输入
Len(str)MsgBox Len(“abc”) ’ 输出 3字符串长度
Left(str, n)Left(“abcde”, 3) ’ “abc”左起取 n 个字符
Right(str, n)Right(“abcde”, 3) ’ “cde”右起取 n 个字符
Mid(str, start, len)Mid(“abcde”, 2, 3) ’ “bcd”从指定位置取子串
UCase / LCaseUCase(“abc”) ’ “ABC”转大/小写
Date / Time / NowMsgBox Now当前日期时间
Year/Month/DayMsgBox Year(Now)取年/月/日
4. 流程控制

If…Then…Else

Dim score score = InputBox("请输入成绩:") If score >= 90 Then MsgBox "优秀" ElseIf score >= 80 Then MsgBox "良好" ElseIf score >= 60 Then MsgBox "及格" Else MsgBox "不及格" End If

Select Case

Select Case weekDay Case 1, 7 MsgBox "周末" Case 2 To 6 MsgBox "工作日" Case Else MsgBox "无效" End Select

For…Next

Dim i For i = 1 To 10 Step 2 ' 步长为2 MsgBox i Next

Do…Loop

Dim num num = 0 Do While num < 5 MsgBox num num = num + 1 Loop
5. 函数与过程

Function(有返回值)

Function Add(a, b) Add = a + b End Function MsgBox Add(15, 25) ' 40

Sub(无返回值)

Sub SayHello(name) MsgBox "Hello, " & name End Sub Call SayHello("李四") ' 或直接 SayHello "李四"
6. 文件系统操作(最实用场景之一)

使用Scripting.FileSystemObject

Dim fso, folder, file, ts Set fso = CreateObject("Scripting.FileSystemObject") ' 创建文件夹 If Not fso.FolderExists("C:\MyTest") Then fso.CreateFolder("C:\MyTest") End If ' 创建并写入文本文件 Set ts = fso.CreateTextFile("C:\MyTest\log.txt", True) ts.WriteLine "当前时间:" & Now ts.WriteLine "这是一行测试内容" ts.Close MsgBox "文件写入完成!"

读取文件

Set ts = fso.OpenTextFile("C:\MyTest\log.txt", 1) ' 1=读取 Do Until ts.AtEndOfStream MsgBox ts.ReadLine Loop ts.Close
7. 注册表操作
Dim WshShell Set WshShell = CreateObject("WScript.Shell") ' 写注册表 WshShell.RegWrite "HKCU\Software\MyApp\Name", "Grok", "REG_SZ" ' 读注册表 MsgBox WshShell.RegRead("HKCU\Software\MyApp\Name")
8. 执行外部程序
Dim WshShell Set WshShell = WScript.CreateObject("WScript.Shell") ' 静默运行 WshShell.Run "notepad.exe", 1, False ' 等待程序结束 WshShell.Run "cmd /c ping 127.0.0.1", 0, True
9. 错误处理
On Error Resume Next ' 忽略错误,继续执行 ' 执行可能出错的代码 Set file = fso.OpenTextFile("不存在的文件.txt") If Err.Number <> 0 Then MsgBox "错误:" & Err.Description Err.Clear End If
小结

VBScript 虽然已被弃用,但仍然是 Windows 系统自动化最简单高效的工具之一。适合快速编写小工具、批量处理文件、修改注册表等任务。

如果你有具体需求(如批量重命名文件、监控文件夹、自动化 Excel 操作等),告诉我,我可以提供完整可运行的 .vbs 示例代码!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/10 22:00:11

13、构建 XSLT 应用程序:模块化与数据访问的全面指南

构建 XSLT 应用程序:模块化与数据访问的全面指南 在 XSLT 应用程序的开发过程中,随着项目规模的不断扩大,样式表和源文档可能会变得庞大且难以管理。为了提高可维护性、可扩展性和代码的复用性,我们需要掌握一些关键技术,如拆分样式表、访问外部文档等。本文将详细介绍这…

作者头像 李华
网站建设 2026/2/11 8:10:22

PaddlePaddle镜像中的SimCLR自监督学习实例演示

PaddlePaddle镜像中的SimCLR自监督学习实例解析 在当今AI研发中&#xff0c;一个绕不开的难题是&#xff1a;如何在标注数据极其有限的情况下&#xff0c;依然训练出高性能的视觉模型&#xff1f; 尤其是在医疗影像、工业质检等专业领域&#xff0c;每一张有效标签背后都可能意…

作者头像 李华
网站建设 2026/2/10 12:47:16

如何快速配置MCP服务器:终极自动化安装指南

如何快速配置MCP服务器&#xff1a;终极自动化安装指南 【免费下载链接】mcp-installer An MCP server that installs other MCP servers for you 项目地址: https://gitcode.com/gh_mirrors/mc/mcp-installer MCP安装器是一款革命性的开源工具&#xff0c;专为简化Mode…

作者头像 李华
网站建设 2026/2/6 0:40:18

Open-AutoGLM部署全流程详解,20年架构师亲授高性能调优秘诀

第一章&#xff1a;Open-AutoGLM部署全流程详解&#xff0c;20年架构师亲授高性能调优秘诀环境准备与依赖安装 部署 Open-AutoGLM 前需确保系统满足最低资源配置&#xff1a;16核CPU、64GB内存、至少500GB SSD存储&#xff0c;并预装Docker 20.10和NVIDIA Container Toolkit&am…

作者头像 李华
网站建设 2026/2/12 2:41:17

PaddlePaddle镜像支持模型冷启动优化,减少首次GPU响应延迟

PaddlePaddle镜像支持模型冷启动优化&#xff0c;减少首次GPU响应延迟 在AI服务日益普及的今天&#xff0c;用户对“快”的要求已经不再局限于推理速度本身——从请求发出到结果返回的每一毫秒都至关重要。尤其在工业质检、OCR识别、智能客服等高并发、低延迟场景中&#xff0c…

作者头像 李华