# VBScript 运行时错误
如果 VBScript 脚本执行系统无法实施的操作,则会产生 VBScript 运行时错误。只有在运行脚本、为变量表达式赋值或分配内存时,才会产生 VBScript 运行时错误。
| 错误编号 | 错误信息 | 描述 |
|---|---|---|
| 5 | 无效过程调用或参数 | 通常表示你传递给函数或过程的参数不正确。可能是因为参数类型错误、参数值超出范围,或者参数个数不匹配。检查相关函数或过程的文档,确保你传递的参数符合要求。 |
| 6 | 溢出 | 通常表示在执行某些操作时,结果超出了数据类型的允许范围。这种错误常见于数值运算或类型转换时,尤其是当计算结果超出了变量所能表示的范围时。 |
| 7 | 内存不足 | |
| 9 | 下标越界 | |
| 10 | 该数组为定长的或临时被锁定 | |
| 11 | 被零除 | |
| 13 | 类型不匹配 | |
| 14 | 字符串空间溢出 | |
| 17 | 无法执行请求的操作 | |
| 28 | 堆栈溢出 | |
| 35 | 未定义 Sub 或 Function | |
| 48 | 加载 DLL 错误 | |
| 51 | 内部错误 | |
| 53 | 文件未找到 | |
| 54 | 坏文件模式 | |
| 55 | 文件已经打开 | |
| 57 | 设备 I/O 错误 | |
| 58 | 文件已经存在 | |
| 61 | 磁盘空间已满 | |
| 62 | 输入超出文件尾 | |
| 67 | 文件太多 | |
| 68 | 设备不可用 | |
| 70 | 权限禁用 | |
| 71 | 磁盘未准备好 | |
| 74 | 不能用不同的驱动器重新命名 | |
| 75 | 路径/文件访问错误 | |
| 76 | 路径未找到 | |
| 91 | 未设置对象变量 | |
| 92 | For 循环未初始化 | |
| 94 | 非法使用 Null | |
| 322 | 不能建立所需临时文件 | |
| 424 | 需要对象 | |
| 429 | ActiveX 部件无法创建对象 | |
| 430 | 类不支持自动化 | |
| 432 | 在自动化操作中未找到文件名或类名 | |
| 438 | 对象不支持该属性或方法 | |
| 440 | Automation错误 | |
| 445 | 对象不支持此操作 | |
| 446 | 对象不支持指定的参数 | |
| 447 | 对象不支持当前的区域设置 | |
| 448 | 未找到命名参数 | |
| 449 | 参数不可选 | |
| 450 | 错误的参数个数或无效的参数属性值 | |
| 451 | 对象不是一个集合 | |
| 453 | 指定的dll函数未找到 | |
| 455 | 代码源锁错误 | |
| 457 | 这个键已经是本集合的一个元素关联 | |
| 458 | 变量使用了一个 VBScript 中不支持的自动化类型 | |
| 462 | 远程服务器不存在或不能访问 | |
| 481 | 无效图片 | |
| 500 | 变量未定义 | |
| 501 | 违法的分配非法赋值 | |
| 502 | 脚本对象不安全 | |
| 503 | 对象不能安全初始化 | |
| 504 | 对象不能安全创建 | |
| 505 | 无效的或不合格的引用 | |
| 506 | 类未被定义 | |
| 507 | 发生异常 | |
| 3281 | 元素未找到 | |
| 5016 | 需要正则表达式对象 | |
| 5017 | 正则表达式中的语法错误 | |
| 5018 | 错误的数量词 | |
| 5019 | 在正则表达式中需要 ']' | |
| 5020 | 在正则表达式中需要 ')' | |
| 5021 | 字符集越界 |
# VBScript 语法错误
如果 VBScript 语句结构违反了一个或多个 VBScript 脚本语言语法规则,就会产生 VBScript 语法错误。VBScript 语法错误通常在执行程序前,编译程序时产生。
| 错误编号 | 描述 |
|---|---|
| 1001 | 内存不足 |
| 1002 | 语法错误 |
| 1003 | 缺少':' |
| 1005 | 需要 '(' |
| 1006 | 需要 ')' |
| 1007 | 需要 ']' |
| 1010 | 需要标识符 |
| 1011 | 需要 '=' |
| 1012 | 需要 'If' |
| 1013 | 需要 'To' |
| 1014 | 需要 'End' |
| 1015 | 需要 'Function' |
| 1016 | 需要 'Sub' |
| 1017 | 需要 'Then' |
| 1018 | 需要 'Wend' |
| 1019 | 需要 'Loop' |
| 1020 | 需要 'Next' |
| 1021 | 需要 'Case' |
| 1022 | 需要 'Select' |
| 1023 | 需要表达式 |
| 1024 | 需要语句 |
| 1025 | 需要语句的结束 |
| 1026 | 需要整数常数 |
| 1027 | 需要 'While' 或 'Until' |
| 1028 | 需要 'While,'、 'Until,' 或语句未结束 |
| 1029 | 需要 'With' |
| 1030 | 标识符太长 |
| 1031 | 无效的数 |
| 1032 | 无效的字符 |
| 1033 | 未结束的串常量 |
| 1034 | 未结束的注释 |
| 1037 | 无效使用关键字 'Me' |
| 1038 | 'loop' 没有 'do' |
| 1039 | 无效 'exit' 语句 |
| 1040 | 无效 'for' 循环控制变量 |
| 1041 | 名称重定义 |
| 1042 | 必须为行的第一个语句 |
| 1043 | 不能赋给非Byval参数 |
| 1044 | 调用 Sub 时不能使用圆括号 |
| 1045 | 需要文字常数 |
| 1046 | 需要 'In' |
| 1047 | 需要 'Class' |
| 1048 | 必须在一个类的内部定义 |
| 1049 | 在属性声明中需要 Let , Set 或 Get |
| 1050 | 需要 'Property' |
| 1051 | 参数数目必须与属性说明一致 |
| 1052 | 在类中不能有多个缺省的属性/方法 |
| 1053 | 类初始化或终止不能带参数 |
| 1054 | Property Let 或 Set 至少应该有一个参数 |
| 1055 | 不需要的 'Next' |
| 1056 | 只能在 ‘Property’ 或 ’Function’ 或 ’Sub’ 上指定 ’Default’ |
| 1057 | 说明 'Default' 必须同时说明 'Public' " |
| 1058 | 只能在 Property Get 中指定 'Default' |