统计桌面文件和文件夹数量的VBS脚本运行报错如何解决?
报错原因
错误代码0x800A0408是VBS的无效字符语法错误,触发根因是VBS语法不支持将字符串连接符&放在独立行的开头作为上一行语句的延续:
你当前的代码将MsgBox的参数拆成了两行,第一行msgbox "the no of files on the desktop is:"会被VBS解析为一条完整的独立语句,第二行开头的&不属于任何合法VBS语句的开头,因此直接抛出无效字符报错。
修复方案
有两种常用修复方式:
- 方案1:将拆分的两行合并为同一行,不要拆分单条语句:
Set fso = CreateObject("Scripting.FileSystemObject") DesktopPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") ' 统计文件数量 MsgBox "桌面的文件数量为:" & fso.GetFolder(DesktopPath).Files.Count ' 统计文件夹数量 MsgBox "桌面的文件夹数量为:" & fso.GetFolder(DesktopPath).SubFolders.Count
- 方案2:如果需要保留多行写法提升可读性,需要在第一行末尾添加VBS的行延续符
_,标识下一行和当前行属于同一条语句:
Set fso = CreateObject("Scripting.FileSystemObject") DesktopPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") ' 统计文件数量 MsgBox "桌面的文件数量为:" & _ fso.GetFolder(DesktopPath).Files.Count ' 统计文件夹数量 MsgBox "桌面的文件夹数量为:" & _ fso.GetFolder(DesktopPath).SubFolders.Count
内容的提问来源于stack exchange,提问作者vadiraj
相关产品推荐
相关产品推荐

