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

标签 vbscript macros scheduled-tasks wsh

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

enter image description here

这是完整的文件路径

C:\Users\Desktop\service calibration details\RunExcel\RunExcel.vbs

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

这是什么意思?

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

最佳答案

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

The above screen shot does not show the full filepath

What does this mean?

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

How can i perform this succesfully?

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

  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

关于vbscript - Windows 脚本宿主 - (文件路径)中没有文件扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29444792/

相关文章:

java - 计划的 Spring MVC 任务不更新数据库实体

powershell - 如何在任务完成时更新运行结果?

vbscript 在同一资源管理器窗口中打开文件夹

sql-server-2005 - 用于连接到 SQL Server 2005 并更新表的 VBScript

internet-explorer - Internet Explorer 11 中的 VBScript 支持

c++ - 在 C++ 中将 projectDir 作为字符串或 char*

mysql - 存储json,双引号转义问题

macros - objective-c - 如何编写宏

c - 忽略分号 C 语法

php - 在 Linux 上从 Web 环境调度作业