任务计划程序启动任务出现问题

69

我在Windows 2008 R2机器上安排了一个任务,但是它未能触发,事件日志中显示以下错误:

错误:

任务计划程序无法启动“\Hyatt_International_Distribution”任务,用户为“SAFFRON3\cb_admin”。附加数据:错误值: 2147943645。

任务计划程序无法启动任务引擎“”进程,因为在“LUAIsElevatedToken”中发生错误。命令=“taskeng.exe”。附加数据:错误值: 2147943645。

完整的错误消息如下所示:

日志名称: Microsoft-Windows-TaskScheduler/Operational 源: Microsoft-Windows-TaskScheduler 日期: 2012/4/16 上午9:59:59 事件 ID: 101 任务类别: 任务启动失败 级别: 错误 关键字:
用户: SYSTEM 计算机: xyz 说明: 任务计划程序无法启动“\Distribution”任务,用户为“SAFFRON3\cb_admin”。附加数据:错误值:2147943645。 事件 Xml:

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-TaskScheduler" Guid="{de7b24ea-73c8-4a09-985d-5bdadcfa9017}" />
    <EventID>101</EventID>
    <Version>0</Version>
    <Level>2</Level>
    <Task>101</Task>
    <Opcode>101</Opcode>
    <Keywords>0x8000000000000000</Keywords>
    <TimeCreated SystemTime="2012-04-16T14:59:59.950Z" />
    <EventRecordID>101476</EventRecordID>
    <Correlation />
    <Execution ProcessID="336" ThreadID="1216" />
    <Channel>Microsoft-Windows-TaskScheduler/Operational</Channel>
    <Computer>xyz</Computer>
    <Security UserID="S-1-5-18" />
  </System>
  <EventData Name="TaskStartFailedEvent">
    <Data Name="TaskName">\Distribution</Data>
    <Data Name="UserContext">SAFFRON3\cb_admin</Data>
    <Data Name="ResultCode">2147943645</Data>
  </EventData>
</Event>

任务设置为:无论用户是否登录,以最高权限运行 s,电源:仅当连接电源时启动,允许在需求下运行任务。

该任务几乎每天都能正确运行,但昨天失败了。有什么特别的原因吗?


可能是Windows任务计划程序错误101启动失败代码2147943785的重复问题。 - Michael Freidgeim
9个回答

74

关于属性:

检查单选按钮是否被选择

Run only when user is logged on 
如果您选择了上述选项,那就是它失败的原因。所以将选项更改为:
Run whether user is logged on or not

在其他情况下,用户可能已更改其登录凭据。


我之前提到它被设置为“无论用户是否登录都运行”。凭据在7天前更改,过去6天内它一直正常运行,失败了一次,今天成功运行。 - Kausty
2
是的,今天它运行得很好。但这种情况每周都会发生。任务在任何给定日期随机失败。 - Kausty

62

我的任务被设置为仅在用户登录时运行,但即使我已经登录并手动启动它,它也无法正常工作。用户已经设置成我了,没有更改密码等。

我通过点击"更改用户"并再次选择自己来解决这个问题。

我怀疑是由于AD更改了用户SID或类似的原因导致的。也许IT在AD中进行了一些用户管理,谁知道呢。


3
我通过打开exe文件本身的属性解决了这个问题。在“兼容性”选项卡中有一个特权级别复选框,上面写着“以管理员身份运行此程序”。
即使我的账户拥有管理员权限,但当我从任务计划程序中启动它时,它仍无法正常工作。
我取消了该复选框并再次从计划程序中启动它,这样就可以正常工作了。

1
据我所知,您需要为域帐户提供适当的“用户权限”,例如“作为批处理作业登录”。您可以在本地策略中检查。此外,您可能有一个覆盖本地策略的域GPO。我敢打赌,如果您将此域帐户添加到该计算机的本地管理员组中,您的问题将得到解决。以下是一些供您参考的文章:

http://social.technet.microsoft.com/Forums/en/windowsserver2008r2general/thread/9edcb63a-d133-45a0-9e8c-f1b774765531 http://social.technet.microsoft.com/Forums/lv/winservergen/thread/68019b24-78a5-4db0-a150-ada921930924 http://sqlsolace.blogspot.com/2009/08/task-scheduler-task-does-not-run-error.html?m=1 http://technet.microsoft.com/en-us/library/cc722152.aspx


在Technet上以批处理作业身份登录:https://technet.microsoft.com/zh-cn/library/cc755659 - Dude Pascalou

1

我曾经遇到和你一样的问题。我试过兼容性选项,但在Windows 10中并没有显示兼容性选项。以下步骤解决了我的问题:

  1. 确保运行该任务的账户对要执行的文件具有完全访问权限。 (执行任务仍然没有运行)
  2. 以管理员身份运行taskschd.msc
  3. 将账户添加到运行任务的列表中(无论是否已登录)
  4. 执行任务,现在它可以运行了!

因此,以普通用户身份在taskschd.msc设置任务并不起作用,尽管我的账户是管理员。

希望这能帮助到任何遇到同样问题的人。


1
  • 在任务计划程序中右键单击任务
  • 点击“操作”选项卡
  • 点击“编辑”
  • 在“启动位置”文本框中删除路径周围的引号。

对我来说,解决方案是必须从路径中删除Action/Start中的引号,就像Bikey提到的那样,但也必须选择“仅在用户登录时运行”,否则程序GUI窗口不会出现。 - Ka Norbi

1

我的任务也无法启动。

我通过不仅指定可执行文件路径,还指定可执行文件所在文件夹的路径来解决了这个问题(选项卡“操作”| 编辑 | 文本框“起始位置”)。


0

谢谢大家, 我遇到了同样的问题。我有一个任务是通过一个通用用户帐户运行的,该帐户与特定人员无关。这个用户不知何故已经注销了VM,在我尝试修复它时,我登录的是我的账户而不是那个用户。

重新使用该用户登录解决了问题!


0

检查您是否安排了一个任务来触发可执行文件(.exe)或批处理(.bat)文件。如果您已经安排了任何其他文件来打开(例如.txt或.docx文件),那么该文件将不会打开。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接