我已经搜索了一段时间,但目前还没有从我信赖的朋友 Google 那里得到太多信息,所以想知道是否有其他人可以分享一些智慧。
默认情况下,Windows 在任务计划程序库 > Microsoft > Windows > SystemRestore称为 SR。它设置为每天在系统启动时和午夜运行,但我希望它运行得更频繁一些。
显然我可以在奇数台机器上手动修改它,但是我想通过 GPO 在多台机器上更改设置。
我知道如何在 GPO 中创建计划任务,但如何编辑上述位置下已创建的任务?
有任何想法吗?
谢谢詹姆斯:)
答案1
谢谢@Matze
“我一直在寻找这个问题的解决方案。即使在组策略首选项中创建具有完全相同名称的计划任务项也不起作用。”
像您一样,我尝试创建一个与现有任务同名的计划任务并以此方式进行修改,但这也不起作用。
最后,我不得不创建一个新的,具有我想要的时间,它就位于任务计划程序库的根目录中。
“我能想到的唯一方法是将 PowerShell 启动脚本附加到您的 GPO,例如利用 Set-ScheduledTask Cmdlet。”
我很想知道您如何在 PowerShell 中创建脚本?我没有接触过 PowerShell,而且遗憾的是我的编码技能也非常有限 :/。
感谢您对此的回复 :)
J
答案2
我感兴趣的是想知道您如何在 PowerShell 中创建脚本? 我建议你使用本机 schtasks.exe 命令作为设置计划任务Cmdlet 过于复杂。您可以使用任务管理器但是,这是在 Powershell 脚本中。
谢谢
答案3
通过 GPO 创建一个计划任务,名称中包含路径,并将其设置为更新,而不是替换。确保 Microsoft 前面没有反斜杠。所以:
Name: Microsoft\Windows\SystemRestore\SR
然后只需复制所有与原始相同的触发器/步骤/等等,但修改您想要的内容。
根据您要实现的功能,以下内容也可能相关:请注意,我还发现标准用户无权在 Win10 或更高版本上创建任务计划程序子文件夹。以前在 Win7 上,他们可以在不成为本地管理员的情况下创建。这直接影响诸如创建远程应用程序桌面快捷方式的计划任务(由于用户没有正确的文件夹访问权限来创建它,因此无法执行)。补救此问题的一个示例是将以下内容设置为标准用户的 powershell 登录脚本:
$user = $env:USERNAME + "@yourdomain.com"
$sc = New-Object -ComObject schedule.service
$sc.Connect()
$root = $sc.GetFolder("\Microsoft\Windows\RemoteApp and Desktop Connections Update")
try{$null = $root.GetFolder($user)}
catch{$null = $root.CreateFolder($user)}
答案4
我一直在寻找这个问题的解决方案。即使在组策略首选项中创建一个具有完全相同名称的计划任务项也不起作用。
我能想到的唯一方法是将 PowerShell 启动脚本附加到您的 GPO,例如利用 Set-ScheduledTask Cmdlet。