如何使用Messagebox在Windows 7任务计划程序中启动VBS脚本?

时间:2012-01-19 12:19:27

标签: windows-7 vbscript scheduled-tasks

我正在使用Win7 x64 Professional,并尝试使用Windows任务计划程序运行VBS脚本。我的问题是,脚本的行为与直接启动的脚本完全不同,即使我以高权限启动它,并使用相同的用户。

我注意到的一件事是,例如,无法在屏幕上输出任何消息框。

在Windows XP下,我记得有一个名为“允许与桌面交互”的选项修复了很多这些问题,但我在Win7上找不到这些选项。

我还尝试运行Wscript.exe,并将脚本文件作为命令行选项传递,但这导致脚本根本无法启动,即使任务调度程序说它已正确启动。

您能否解释一下在Win7中启动VBS的最佳方法是什么,以便在脚本直接在资源管理器中启动时具有与脚本相同的行为?

2 个答案:

答案 0 :(得分:17)

您应该使用CScript.exe而不是WScript.exe,以便将WScript.Echo之类的命令输出到控制台而不是对话框。正如您所指出的,计划任务应避免使用MessageBox或任何可能导致脚本阻止的UI元素。

我建议按如下方式安排脚本:

C:\Windows\System32\CScript.exe //Nologo //B X:\PathToYourScript\YourScript.vbs

我为您选择的选项是“防止徽标显示”和“批处理模式”。通过在命令提示符下运行CScript /?来咨询您的在线帮助。

答案 1 :(得分:1)

刚发布这个b / c我在语法上挣扎了一段时间......
每个人都说使用.bat在任务调度程序中运行.vbs ...

.bat文件不需要!但是...精美的印刷品:

从任务计划程序运行vbs - 要么做一个快捷方式/ .lnk,要么直接打电话。

!!注!!
文件路径中不允许引号,文件路径中不允许使用空格。 因此,在vbs路径/名称已经一成不变的情况下,通常更容易制作满足这些规则的快捷方式。