参考文档
Task Scheduler Api文档
Api文档里帮助最大的一页,是关于注册任务方法内每一个参数的定义
文章里讲了怎么用API建一个任务出来,有参考意义
代码
$TaskName = "TaskName"
$TaskDescr = "Task Description."
$TaskCommand = "c:\windows\system32\WindowsPowerShell\vl.0\powershell.exe"
$TaskScript = "D:\ScriptPath\script.psl"
$TaskArg = "-ExecutionPolicy Bypass -NoProfile -File $TaskScript"
$Time ="03:00:00"
$TaskStartTime = [datetime]$Time
$service = new-object -ComObject("schedule.Service")
$service.Connect()
$rootFolder = Sservice.GetFolder("\")
$TaskDefinition = Sservice.NewTask(0)
$TaskDefinition.RegistrationInfo.Description = "$TaskDescr"
$TaskDefinition.Settings.Enabled = $true
$TaskDefinition.Settings.AllowDemandStart = $true
$TaskDefinition.Principal.RunLevel = 1
$triggers = $TaskDefinition.Triggers
$trigger = $triggers.Create(4)
$trigger.DaysofMonth = 1
$trigger.startBoundary = $TaskStartTime.Tostring("yyyy-MM-dd'T'HH:mm:ss")
$trigger.Enabled = $true
$Action = $TaskDefinition.Actions.create(0)
$action.Path = "$TaskCommand"
$action.Arguments = "$TaskArg"
$rootFolder.RegisterTaskDefinition("$TaskName" "$TaskDefinition",6,"s-1-5-21-965699252-1853665932-387144383-16481",$null,1) #这里的sid是gmsa的sid