任务计划程序无法成功执行 .vbs 脚本

任务计划程序无法成功执行 .vbs 脚本

如果这个问题的答案确实很明显,请原谅!

我们每天通过服务器上的 .vbs 脚本运行几个任务(通过任务计划程序),几个月来一直都很好,但最近我们遇到了一个问题。.vbs 脚本无法成功执行(总是超时)……但仍然可以手动执行,没有任何问题(!)。

由于不知道任务计划程序出现问题的原因,我们想尝试一些“创造性思维”,以另一种方式运行 .vbs:通过任务计划程序执行的 .bat 文件。我们再次遇到了奇怪的问题,但这次有更多的调试信息。

任务计划程序运行的.bat 文件只不过是......

CScript "C:\location\script.vbs" > Log.txt

但尝试运行它之后,任务计划程序失败并出现以下错误:

0x1:调用了错误的函数或者调用了未知的函数。

Log.txt(作为上面的.bat文件的输出)显示:

CScript 错误:Windows 脚本宿主初始化失败。(存储空间不足,无法处理此命令。)

但请注意:如果双击执行,.bat 文件就可以完美执行(vbs 脚本和所有内容)!只有通过任务计划程序运行时才会出现问题。这是什么鬼?

我们正在奔跑Windows Server 2008 R2(x64) 是的,无论用户是否登录,任务计划程序的结果都是相同的。此外,可以成功手动运行脚本的用户也是在任务计划程序中运行脚本的用户。

感谢您对这个奇怪问题的帮助!

答案1

事实证明,这实际上是内存不足。重新启动服务器并再次释放 16GB,最终让它能够运行。用户权限没有问题。用户凭据也没有问题。这只是一个奇怪的内存问题(当我无法启动 SQL 配置管理器或通过 Windows 更新成功安装任何更新时,我注意到有些问题)。

我猜测任务计划程序没有权限收回 RAM,而手动运行 .bat 的管理员用户却有权限。

潘多拉魔盒:打开了。*呜呜*

答案2

听起来像是计划任务的权限问题。确保为任务分配了启动 Windows Script Host 所需的凭据。在任务管理器中,应该有一个地方来定义任务运行所用的帐户凭据。

相关内容