AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 7638
In Process
Brian Willis
Brian Willis
Asked: 2009-05-13 20:08:45 +0800 CST2009-05-13 20:08:45 +0800 CST 2009-05-13 20:08:45 +0800 CST

Windows 计划任务无法完成,错误代码为 0xc000013a

  • 772

我正在使用 Windows Server 2003 并且有一个无法完成的计划任务。该任务设置为每天下午 3 点运行 Windows 命令脚本 (.cmd)。该脚本运行一个程序,该程序从 SQL Server 数据库中提取一些数据并将该数据上传到 FTP 服务器。

计划任务文件夹的“最后结果”列中显示的错误代码为 0xc000013a。快速谷歌搜索导致这个微软支持页面指出:最常见​​的“C”错误代码是“0xC000013A:应用程序因 CTRL+C 而终止”。

任务运行时没有人登录,因此没有人可以按 CTRL+C。我不确定我是否理解 Microsoft 文档中所说的内容。

我已经检查了基本的东西 - 计划任务已启用,计划每天运行,并指向一个确实存在于有效位置的文件。有趣的是,当我手动运行此任务时(通过从命令行运行 .cmd 脚本,或通过右键单击该任务并单击“运行”),该任务成功完成。

这个错误代码是什么意思,当我不在那里强制它时,我怎样才能让这个任务运行?

windows windows-server-2003 scheduled-task
  • 11 11 个回答
  • 114186 Views

11 个回答

  • Voted
  1. nray
    2009-06-17T06:55:26+08:002009-06-17T06:55:26+08:00

    排查计划脚本问题:

    1. 如果您还没有,请检查计划任务日志文件,在 GUI 中的Advanced > View Log下。在文件中搜索“ ***”以查找最近的条目,您可能会看到一些额外的错误信息。

    2. 定义一个日志文件来捕获输出,并在那里发送标准输出和标准错误。将任何echo OFF更改为echo ON以确保您没有抑制任何错误消息。
      例如,如果您的脚本被调用,ftp.data.cmd那么您的计划任务可能如下所示,

      cmd /c ftp.data.cmd >> ftp.data.log 2>&1

    3. 剧本挂了吗?也许任务调度程序在某个指定的时间段后正在终止脚本(因此出现 CTRL+C 错误代码)。在您的 scipt 中的战略点添加其中一些,

      echo %DATE% %TIME%

    4. 您确定运行脚本的帐户有权/访问脚本中的所有内容吗?

    5. 如果您无法获得任何乐趣,请运行此命令并在此处发布输出,也许我们可以从调度开始,

      schtasks /query /v /fo LIST /s YOURSERVER

    • 7
  2. cori
    2009-05-13T21:02:55+08:002009-05-13T21:02:55+08:00

    我不能直接回答这个问题,因为我不知道错误消息的具体含义(因此也不知道如何修复它),但如果我试图解决它,我会在日志文件中添加一些写入脚本中的战略点,然后在预定时间之后查看要运行的最后一个检查点是什么。

    我的怀疑是由于脚本正在运行的凭据或脚本中的某些内容需要登录用户而导致失败。缩小脚本中失败的地方可能会帮助您找到“有问题的”代码。

    • 4
  3. susand
    2011-02-03T14:08:24+08:002011-02-03T14:08:24+08:00

    我意识到这是一篇旧帖子,但它们在寻找解决方案时非常有帮助,也许我发现的内容也有帮助。我在 Windows Server 2003 上使用 WinSCP 上传到 ftp 服务器并收到相同的错误消息,并且 SchedLgU.txt 文件指出“停止任务如果它适合:”部分中没有足够的时间,即使我给出了任务有足够的时间上传。

    查看任务管理器,我可以看到 WinSCP.exe 没有清除,并且列表中有大量进程,所以我创建了一个批处理文件 (taskkill /f /im winscp.exe) 来杀死任何打开的进程,然后我在 WinSCP 之前运行该批处理文件,它现在运行良好。

    • 2
  4. VolleyJosh
    2018-03-07T08:23:51+08:002018-03-07T08:23:51+08:00

    我今天在远程服务器上遇到了这个问题,解决方案是将运行设置从“仅在用户登录时运行”更改为“无论用户是否登录都运行”。

    使用“仅在用户登录时运行”任务启动一个命令窗口,该窗口在我的远程桌面会话超时时关闭。使用“无论用户是否登录都运行”任务运行时不会显示任何窗口,因此当我的远程桌面会话结束时执行不会停止。

    • 2
  5. Glenn Slaven
    2009-05-13T21:07:42+08:002009-05-13T21:07:42+08:00

    与cori的回答类似,我建议您检查计划任务设置为谁运行,因为我已经看到当运行任务的用户帐户与登录用户没有相同的权限时会发生此错误

    • 1
  6. Ted Taylor
    2011-08-02T19:27:38+08:002011-08-02T19:27:38+08:00

    如果之前运行过,也许网络中断或另一台主机上的问题等情况可以解释失败。

    • 1
  7. ruddwall
    2013-06-20T06:23:15+08:002013-06-20T06:23:15+08:00

    我遇到了同样的错误,这是因为我正在运行的批处理文件提示使用 DEL 命令删除一些文件。由于没有用户回答 Y/N 来批处理,计划任务被终止。以下是我在计划任务日志中发现的消息:“任务已终止。此操作由管理员或任务计划程序服务启动(例如,因为计算机现在非空闲)。” 我的建议是从命令提示符手动运行任务,以查看它在哪里停止或提示进行某些用户交互,更正它,您的任务将运行良好。

    • 1
  8. roadkill42
    2014-05-28T10:29:39+08:002014-05-28T10:29:39+08:00

    如果您尝试在任务计划程序控制下运行程序,System.Environment.CurrentDirectory 将返回 C:\Windows\System32,而不是您的可执行文件所在的位置。此错误可能是文件未找到错误;我试图登录到一个子目录,它在 System32 树中不存在。

    • 1
  9. Danko
    2011-08-12T21:23:59+08:002011-08-12T21:23:59+08:00

    在我的脚本中,这很清楚。这是因为我在批处理文件末尾有“暂停”,并且计划任务限制为 20 分钟。当用户在场时,hi 可以看到作业的流程。20分钟后,计划任务何时终止批处理文件。这会导致 0xc000013a 并且没关系。

    • 0
  10. Andrei G
    2014-02-07T12:55:22+08:002014-02-07T12:55:22+08:00

    我遇到了同样的问题,并通过将触发器从“系统启动时”更改为“登录时”来修复它。

    • 0

相关问题

  • Vanilla Powershell 是否足以成为 Windows 和 DB 服务器管理员的语言?

  • 为什么添加新驱动器后我的磁盘驱动器访问速度如此之慢?

  • 在 Windows Server 2003 下使用 wscipt 从 .asp 文件运行 .exe

  • 最佳混合环境(OS X + Windows)备份?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve