Vbscript VBS创建计划任务

Vbscript VBS创建计划任务,vbscript,scheduled-tasks,elevated-privileges,Vbscript,Scheduled Tasks,Elevated Privileges,我在网上找到了创建计划任务的代码,但我还需要添加代码,使任务以提升的权限运行(即绕过UAC),以及在错过计划运行时间时立即运行任务。在语法上到处搜索都没有结果。顺便说一句,我对VBS一点也不熟悉,只熟悉python和java,但我的公司用VBS编写了他们所有的脚本。因此,请向VBS新手解释解决方案。谢谢 strComputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impe

我在网上找到了创建计划任务的代码,但我还需要添加代码,使任务以提升的权限运行(即绕过UAC),以及在错过计划运行时间时立即运行任务。在语法上到处搜索都没有结果。顺便说一句,我对VBS一点也不熟悉,只熟悉python和java,但我的公司用VBS编写了他们所有的脚本。因此,请向VBS新手解释解决方案。谢谢

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set objNewJob = objWMIService.Get("Win32_ScheduledJob")
errJobCreated = objNewJob.Create _
    ("C:\DDR Tools\Ninite.exe", "********120000.000000-480", _
        True , 1 OR 16, , True, JobID) 
Wscript.Echo errJobCreated
使用命令行

schtasks /create /s computer /u user /p password /ru RunasUser /tn JobName /rl HIGHEST /tr programname /st 14:30 /sc daily 

此方法非常旧,只支持任务调度器选项的一小部分(基本上是在引入时可能的选项)。这是vista之前的版本,所以不需要提升。如答案中所示,您可以使用schtasks获得更多选项。虽然schtasks也不支持taskscheduler中每个可能选项的开关,但它有一个/XML开关,允许导入您在gui中创建并导出为XML格式的任何任务作为后备。