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

时间:2017-10-25 13:21:03

标签: batch-file vbscript hta

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

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

它不起作用,我自然定义了oShell等......

当我将此行作为批处理文件运行时:

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

它工作正常!

我无法弄清楚为什么vbs会返回文件未找到错误,请帮忙吗?

1 个答案:

答案 0 :(得分:3)

正如其他人已经指出的那样,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"