【问题标题】:Windows script host - There is no file extension in (file path)Windows 脚本主机 - (文件路径)中没有文件扩展名
【发布时间】:2015-06-09 06:54:07
【问题描述】:

我正在尝试使用 Windows 任务调度程序运行 Windows 脚本。 我收到以下错误。

这是完整的文件路径

C:\Users\Desktop\服务校准详情\RunExcel\RunExcel.vbs

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

这是什么意思?

我怎样才能成功地执行此操作?

【问题讨论】:

  • "C:\Users\Desktop\service calibration details\RunExcel\RunExcel.vbs" 注意双引号。

标签: vbscript macros scheduled-tasks wsh


【解决方案1】:

您也可以将文件夹重命名为不再有空格 - 或许改用下划线。

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

【讨论】:

    【解决方案2】:

    问题是由文件路径中的空格引起的。我在 VBA 上使用 Shell 函数发现了同样的问题,虽然环境不一样,但我认为解决方案是适用的。我将尝试以一般方法解决您的问题,而不仅仅是针对 Windows 任务计划程序。

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

    这是什么意思?

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

    我怎样才能成功地执行此操作?

    解决此问题的方法是用引号将文件路径括起来。正确的方法取决于您使用的环境。从 1 号开始尝试这些。

    1. 使用简单的引号将文件路径括起来: "C:\Users\Desktop\服务校准详情\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
    

    【讨论】:

      猜你喜欢
      • 2017-11-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-06
      • 1970-01-01
      • 1970-01-01
      • 2011-12-08
      相关资源
      最近更新 更多