Windows 调度程序 - 用户未登录时任务不运行

Windows 调度程序 - 用户未登录时任务不运行

我有 Windows Server 2003,通过远程桌面在一个帐户下设置了计划。该帐户也出现在“创建者”列中。我取消了“仅在登录时运行”的勾选。

当我使用该帐户登录,然后“断开连接”而会话仍处于活动状态时,计划将运行。但每次重新启动服务器时,任务都会再次失败,直到我再次登录并断开连接。

我错过了什么 KB 修复或忽略了什么问题?通常,只有当用户告诉我计划已停止运行时,我才会发现这个问题,所以这是一个真正的可靠性问题。

我也会很高兴听到一个建议使用可靠性更高的替代调度程序的答案。

谢谢

答案1

需要检查以下几件事:

确保您所安排的任务没有Run only if logged in勾选该选项。

确保任务计划程序已设置为与桌面交互

  1. 单击“开始”,单击“控制面板”,然后双击“管理工具”。
  2. 单击“计算机管理”。
  3. 展开“服务和应用程序”,然后单击“服务”。
  4. 右键单击任务计划程序服务,然后单击属性。
  5. 在“常规”选项卡上,确保启动类型设置为自动,并且服务状态为“已启动”。如果服务未运行,请单击“启动”。
  6. 在“登录”选项卡上,确保选择了本地系统帐户,并且“允许服务与桌面交互”复选框有复选标记。
  7. 单击“确定”,然后退出“计算机管理”

如果您想使用本地系统帐户而不是用户帐户来运行计划任务,那么您需要使用 SCHTASKS 工具(例如在本地服务器上运行且不需要使用网络资源的任务等)

答案2

您需要向运行任务的用户授予“作为批处理作业运行”权限。它位于本地安全策略中

答案3

仅在用户登录后才能正确运行的任务听起来像是权限问题。该任务到底是做什么的?

如果用户帐户在控制台或远程会话中保持登录状态,然后在不同的远程会话下远程启动该任务,任务是否可以正确运行?

编辑

我想核实一下。你问题中的事实和你的评论似乎相互矛盾。

因此,如果我理解正确的话,该任务是在“Admin2”下创建的。如果您登录该帐户,无论是远程登录还是在控制台登录,该任务都会在您登录时启动。

系统启动时,任务拒绝正确运行(即使结果不理想,它也会返回 0x0)。

如果您以“Admin1”身份登录,它也不会正确运行。

但你会说:

它通常会显示 0x0(成功)。事实上,当我尝试从其他帐户我使用时,它说它已运行并返回 0x0,即使它尚未执行。

其他帐户似乎自相矛盾。您只提到了两个具有本地管理员权限的帐户。首先,在问题中您陈述了任务确实有效在另一个帐户上,如果你远程登录。然后在评论中你说不起作用. 这看上去有点令人困惑。

相关内容