77

我正在尝试安排我的 C# 程序在 Windows 调度程序上运行。我正在使用,Windows 7 专业版。

无论用户是否登录,我都可以创建任务安全选项集来运行,赋予它高权限,它是在我有权访问的远程路径上启动一个 exe。

“错误值:2147943785”您的帮助将不胜感激。

这是错误的 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>0x8000000000000001</Keywords> 
  <TimeCreated SystemTime="2013-01-10T12:44:20.882178000Z" /> 
  <EventRecordID>51522</EventRecordID> 
  <Correlation /> 
  <Execution ProcessID="652" ThreadID="1892" /> 
  <Channel>Microsoft-Windows-TaskScheduler/Operational</Channel> 
  <Computer>pcb.co.za</Computer> 
  <Security UserID="S-1-5-18" /> 
  </System>
- <EventData Name="TaskStartFailedEvent">
  <Data Name="TaskName">\Naedo</Data> 
  <Data Name="UserContext">Domanin\User31r</Data> 
  <Data Name="ResultCode">2147943785</Data> 
  </EventData>
  </Event>
4

6 回答 6

115

配置为运行此计划任务的用户必须在托管您要启动的 exe 的计算机上具有“作为批处理作业登录”权限。这可以在托管 exe 的计算机的本地安全策略上进行配置。您可以在下面更改策略(在托管 exe 的服务器上)

管理工具 -> 本地安全策略 -> 本地策略 -> 用户权限分配 -> 作为批处理作业登录

将您的用户添加到此列表中(您也可以将用户帐户设置为托管 exe 的计算机上的本地管理员)。

最后,您还可以简单地将您的 exe 从网络位置复制到本地计算机,然后从那里运行它。

另请注意,域策略可能会限制您组织的“作为批处理作业登录”权限。

于 2013-01-10T13:50:32.897 回答
15

有同样的问题,但在此之前我的工作了几周。意识到我已经更改了服务器上的密码。

如果您选择了“无论用户是否登录都运行”选项,请记住更新您的密码

于 2018-04-11T08:40:16.440 回答
1

只需为与我有相同问题的任何人添加此内容,我就会收到“任务启动失败”错误,因为我更改了 Windows 密码,因此我必须打开任务属性并使用新密码保存。

于 2021-05-07T08:17:40.747 回答
1

我已经更改了任务的执行方法,现在它可以毫无问题地执行它

改变方法

于 2021-08-04T08:27:13.260 回答
1

我今天在Win7.x64上也有同样的问题,这解决了。

右键单击我的计算机 > 管理 > 本地用户和组 > 组 > 管理员双击 > 你的名字应该在那里,如果没有按添加...

于 2016-12-09T18:49:40.863 回答
1

今天有同样的问题。我将用户添加到:

管理工具 -> 本地安全策略 -> 本地策略 -> 用户权限分配 -> 作为批处理作业登录

但仍然收到错误。我找到了这篇文章,结果发现还有这个设置我必须从中删除用户(不确定它是如何进入的):

管理工具 -> 本地安全策略 -> 本地策略 -> 用户权限分配 -> 拒绝作为批处理作业登录

因此请注意,您可能需要为用户检查这两个策略。

于 2020-06-11T19:24:18.580 回答