Windows脚本宿主 - (文件路径)中没有文件扩展名

3
我正在尝试使用Windows任务计划程序运行Windows脚本,但出现了以下错误。
这是完整的文件路径:
C:\Users\Desktop\service calibration details\RunExcel\RunExcel.vbs
上面的屏幕截图没有显示完整的文件路径。
这是什么意思?
如何成功地执行此操作?

2
"C:\Users\Desktop\service calibration details\RunExcel\RunExcel.vbs" - JosefZ
2个回答

5

这个问题是由于您的文件路径中存在空格所导致的。我在使用VBA上的Shell函数时发现了同样的问题,尽管环境不一样,但我认为解决方案是适用的。我将尝试提出一个通用的方法来回答您的问题,不仅仅是针对Windows任务计划程序。

上面的屏幕截图未显示完整的文件路径

这是什么意思?

屏幕没有显示完整的路径,因为Windows将路径读作单个字符字符串,因此,在找到路径上第一个空格之后,它将停止读取,这个空格恰好在单词“service”后面。此时,Windows会认为您的完整路径是“C:\ Users \ Desktop \ service”,因此当它在那个位置查找脚本时......发生错误!

如何成功执行此操作?

解决此问题的方法是用引号括起文件路径。正确的操作方式取决于您使用的环境。请从以下步骤开始尝试。

  1. 使用简单的引号括起文件路径: “C:\ Users \ Desktop \ service calibration details \ RunExcel \ RunExcel.vbs”

  2. 如果您的文件路径已经是用引号括起来的字符串的一部分(例如函数的参数),请使用双引号或CHR(34)。以下示例使用VBA上的Shell函数。

使用双引号:

Shell "wscript ""C:\Users\Desktop\service calibration details\RunExcel\RunExcel.vbs""", vbNormalFocus

使用CHR(34):

Shell "wscript " & Chr(34) & "C:\Users\Desktop\service calibration details\RunExcel\RunExcel.vbs" & Chr(34), vbNormalFocus

2

您也可以将文件夹重命名,不再使用空格,可以使用下划线代替。

C:\Users\Desktop\service_calibration_details\RunExcel\RunExcel.vbs


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接