我使用脚本创建 Windows 计划任务,在系统启动时使用 boxstarter 以提升模式调用 powershell 脚本来运行 Windows 更新(即使在执行期间重新启动,该工具也可以自动继续运行代码)。但不知道为什么,启动后可以调用该任务,但什么也没做。如果我在任务管理器中手动启动计划任务,它将按预期运行。
注册计划任务的脚本:
$TaskActionArgument ="-noprofile -command "&{start-process powershell -argumentList '-File C:\users\administrator\updatescript\boxstarter.ps1 -verb runas'}""
$TaskAction = New-ScheduledTaskAction -Execute "C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe" -argument $TaskActionArgument
$TaskTrigger = New-ScheduledTaskTrigger -AtStartup
Register-ScheduledTask -TaskName boxstarter -Action $TaskAction -Trigger $TaskTrigger -User administrator -Password Vmc12svt -RunLevel Highest
我检查了事件日志查看器,并看到计划作业的以下错误消息:
系统
提供者
[名称] PowerShell
事件 ID 403
[预选赛] 0
4级
任务 4
关键字 0x80000000000000
创建时间
[系统时间] 2018-01-10T18:21:12.000000000Z
事件记录 ID 267
通道 Windows PowerShell
电脑WIN-6HSHKOKP31E
安全
- 事件数据
已停止可用 NewEngineState=已停止 PreviousEngineState=可用 SequenceNumber=16 HostName=ConsoleHost HostVersion=4.0 HostId=13ece112-b027-4051-9ddf-1a195d3aa30f HostApplication=C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -File C: \users\administrator\updatescript\boxstarter.ps1 -verb runas EngineVersion=4.0 RunspaceId=d158a216-18e3-4e86-9ade-b232201c9cdc PipelineId= CommandName= CommandType= ScriptName= CommandPath= CommandLine=
对于错误消息,我用谷歌搜索并找到了错误代码的解释here
通常,该页面表示此类问题可能是由以下错误引起的:
- 任务计划程序服务已禁用
- COM 服务被禁用
- Windows 事件日志服务已禁用
- RPC 服务被禁用
- 没有足够的可用内存
以上不适用于我的系统。
那么我的计划任务有什么错误?我怎样才能让它工作?