HTA 中的 VBS 找不到特定文件,但 Batch 可以

VBS in HTA cannot find specific file but Batch can

我有一个 HTA 来执行一些任务,这个子用于操作一些本地目录。当我 运行 这一行时:

oShell.run "rename ""C:\DSS\Scanbay\Data"" ""DataX"""

不行,自然是我定义了oShell等...

当我运行这一行作为批处理文件时:

rename "C:\DSS\Scanbay\Data" "DataX"

效果很好!

我无法弄清楚为什么找不到 vbs returns 文件错误,请帮忙?

正如其他人已经指出的那样,rename 是 CMD 内置命令,而不是可以直接调用的外部程序。不过,您可以通过 CMD 调用它:

oShell.Run "cmd /c rename ""C:\DSS\Scanbay\Data"" ""DataX"""

话虽如此,重命名文件或文件夹的更好方法是使用 FileSystemObject:

Set fso = CreateObject("Scripting.FileSystemObject")

Set d = fso.GetFolder("C:\DSS\Scanbay\Data")
d.Name = "DataX"