我有一个 vbs 文件,其内容如下:
MsgBox "some thing here",vbOkOnly,"some other thing"
我已将其设置为使用 Windows Scheduler 定期运行。它确实在定期运行(我通过查看任务管理器中的进程来验证这一点)。此外,当我双击 vbs 文件时,它也会显示出来。
问题:
我没有收到消息框。即,消息框根本没有出现。
注意:我不知道 vbs。
答案1
如果您想使用 vbscript 创建计划任务,您必须首先以管理员身份执行它。
您可以做类似的事情来创建每小时运行一次的 vbscript 计划任务,例如:
Option Explicit
Dim FilePath,TaskName,Repeat_Task
'Run this vbscript as Admin
If Not WScript.Arguments.Named.Exists("elevate") Then
CreateObject("Shell.Application").ShellExecute DblQuote(WScript.FullName) _
, DblQuote(WScript.ScriptFullName) & " /elevate", "", "runas", 1
WScript.Quit
End If
FilePath = WScript.ScriptFullName
TaskName = "MyTask"
Repeat_Task = 60 '60 minutes = 1 Hour
Call Create_Schedule_Task(Repeat_Task,TaskName,FilePath)
MsgBox "some thing here that be repeated every hour !",vbInformation,"some other thing"
'-------------------------------------------------------------------------
Sub Create_Schedule_Task(Repeat_Task,TaskName,FilePath)
Dim Ws,Task,Result
Set Ws = CreateObject("WScript.Shell")
Task = "CMD /C Schtasks /Create /SC DAILY /ST 08:00 /F /RI "&_
Repeat_Task &" /DU 24:00 /TN "& TaskName &" /TR "& FilePath &""
Result = Ws.run(Task,0,True)
End Sub
'-------------------------------------------------------------------------
Function Dblquote(str)
Dblquote = chr(34) & str & chr(34)
End Function
'-------------------------------------------------------------------------
如果你想检查你的任务是否创建成功,你应该打开命令行并输入此命令:
schtasks /query /tn "MyTask"
MyTask
您之前在上面的 vbscript 中设置的名称在哪里。