robot
2023.4
false
UiPath logo, featuring letters U and I in white
机器人用户指南
Last updated 2024年10月25日

常见机器人错误

在本节中,您可以找到有关最常见的机器人错误及其解决方法的更多详细信息。

EXE 安装的项目依赖项

观察到的行为

机器人无法下载或运行在 v2019.2 或更低版本的 Studio 中创建的流程,这些流程在官方或 Go! 订阅源中拥有依赖项,但本地或 Orchestrator 中没有这些依赖项。

原因

在通过 UiPathStudioSetup.exe(通常为社区版设置)安装程序部署 Studio 时,系统会在用户模式中安装机器人。因此,只有在本地或机器人连接的 Orchestrator 实例上找到项目依赖项时,机器人才能下载和安装这些项目依赖项。

解决方案 A

必须从官方订阅源中手动下载所有项目依赖项,并将其上传至机器人连接的 Orchestrator 实例。

解决方案 B

从 Studio 中启用官方订阅源,并重启机器人服务 (UiPath.Service.UserHost)。打开 UiPath Assistant 并从中启动流程。现在,您已经正确下载完相应依赖项。

机器人无法启动执行

观察到的行为

在此场景中,机器人无法启动执行流程,并抛出以下错误:

Executor start process failed, reason System.Runtime.InteropServices.COMException: A specified logon session does not exist. It may already have been terminated.

原因 A

机器人计算机的可用资源(如 CPU、RAM 或磁盘空间)不足,因此机器人执行程序无法启动流程。

解决方案 A

检查或执行以下操作:

  • 机器人计算机拥有充足资源(如 CPU、RAM 或磁盘空间)。
  • 使用命令行函数 mstsc 时的连接时间。该时间需超过 60 秒,否则系统会显示错误。

原因 B

当前无法创建登录会话。以下情况中可能会出现此问题:

  • 对于 HD 机器人,将“登录到控制台”设置为 true 。在这种情况下,系统会将机器人服务附加到当前的控制台会话。不建议对 HD 机器人执行此操作,因为一次只能有一个活动的控制台会话。
  • 独立 Windows 版本(非 Windows Server)上拥有多个 RDP 会话。独立 Windows 版本每次只能处理一台计算机上的一个 RDP 会话,而 Windows Server 版本可处理多个 RDP 会话。

解决方案 B

在此情况下,您需要执行以下某项操作:

  • “登录到控制台”设置为“False”。如此一来,机器人服务会启动机器人计算机与自身的 RDP 连接,并将会话附加至机器人。建议为 HD 机器人应用此方法。
  • 确认 Windows 版本为 Windows Server。详情请参阅为 HD 机器人设置 Windows Server
  • 检查 Studio/机器人的版本是否高于 2018.1.3,该版本修复了由以下 Windows 更新程序引起的问题:KB4088876(Windows 8.1 或 Windows Server 2012 R2 Standard)、KB4088875(Windows Server 2008 R2 SP1、Windows 7 SP1)、KB4088787(Windows Server 2016,Windows 10 版本 1607)和 KB4088776(Windows 10 版本 1709)。详情请参阅软件要求
  • 增大服务器上的 UIPATH_SESSION_TIMEOUT 环境变量。由于某些计算机性能低下,默认值 60 秒仍然可能不够。请注意,您应以秒为单位设置环境变量,修改此变量后,需重新启动机器人服务。
  • 检查远程桌面许可证在服务器上是否处于活跃状态。如需了解详情,请参阅此页面
  • 检查机器人是否在正确的组中。本地用户需要在同一远程桌面组中。
  • 检查与机器人计算机的 RDP 连接的用户名是否与配置的用户名相同。为避免此错误,请关闭机器人计算机上的所有 RDP 连接。

未提供密码

观察到的行为

若您在 Orchestrator 中创建机器人时不填写密码字段,则机器人将无法启动流程执行。更改机器人计算机上的权限也会引起此问题。

从 Orchestrator 或 UiPath Assistant 启动流程时,显示以下错误消息:

Executor start process failed, reason System.UnauthorizedAccessException: Access is denied.

原因 A

创建机器人时未提供密码。

解决方案 A

此处所述编辑机器人,确保正确填写以下字段:

  • 域/用户名 - 连接安装机器人的计算机时的用户名。如果用户在某个域下,则还需要以 DOMAIN\UserName 格式指定该用户。使用命令提示符中的 Whoami 命令可以轻松找到它。
  • 密码 - 计算机的 Windows 密码。若是 Attended Robot,则可忽略此要求。

原因 B

SCM 托管机器人服务未运行。详情请参阅关于机器人部署类型

解决方案 B

确保机器人服务正在运行:

  1. 单击 Windows 的“开始”按钮,然后搜索并打开 Services.msc。系统将显示“服务”窗口。
  2. 找到 UiPath 机器人服务并双击该服务。系统会显示“UiPath 机器人属性”面板。
  3. 在“登录”选项卡中,选择“本地系统帐户”选项。
  4. 单击“应用”按钮并关闭窗口,以确认更改。这样便可确保 UiPath 机器人服务正在运行,并且拥有执行流程所需的所有权限。

原因 C

机器人计算机不再拥有管理员权限。

解决方案 C

通过在 Orchestrator 中创建机器人时使用的凭据集登录到机器人计算机。如果无法从 UiPath Assistant 启动流程,则需与网络管理员联系,允许该用户帐户拥有管理员权限。

没有与机器人服务的连接

观察到的行为

在某些情况下,您无法启动流程执行。无论机器人服务是否运行,您都可能会遇到此问题。

从 Orchestrator 或 UiPath Assistant 启动流程时,显示以下错误消息:

Get settings from service failed, reason System.Exception: Could not connect to UiPath® Robot Service.

原因 A

机器人服务未运行。

解决方案 A

在此情况下,您需手动启动机器人服务,如下所示:

  1. 单击 Windows 的“开始”按钮,然后搜索并打开 Services.msc。系统将显示“服务”窗口。
  2. 找到 UiPath 机器人服务,然后右键单击该服务。系统将显示上下文菜单。
  3. 单击“启动”以激活 UiPath 机器人服务。这样一来,系统会在 Windows 登录时启动 UiPath 机器人服务。

为避免在每次机器人计算机启动时重复这些步骤,您需要按如下所述增加 Windows 中的服务超时值。

原因 B

机器人服务的启动时间过长。

解决方案 B

Windows 会报告未在指定时间内加载的服务。默认情况下,此超时值为 30 秒,而机器人服务可能需要更长时间。为增加此值,您需执行以下操作:

  1. 打开 Windows 注册表编辑器。
  2. 导航到注册表项 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control,然后选择子项 Control
  3. 如果 ServicesPipeTimeout 值不可用,则按以下方式创建它:
    1. 右键单击 Control 子键,然后从“新建”菜单中选择“DWORD (32 位)值”。这样便可新建空 DWORD 值。
    2. 输入 ServicesPipeTimeout 作为新值的名称。
  4. 双击 DWORD 值 ServicesPipeTimeout。系统将显示“编辑 DWORD(32 位)值”窗口。
  5. “基数”部分中,选择“十进制”选项。
  6. “数值数据:”字段中,键入 180000。这样便可将默认 ServicesPipeTimeout 更改为 3 分钟。现在,系统应有足够的时间来正确加载所有 Windows 服务。
  7. 关闭 Windows 注册表编辑器并重启计算机,以使更改生效。

原因 C

机器人计算机的权限不正确。在此情况下,机器人服务也可能显示为“正在运行”。

解决方案 C

通过 Windows 注册表编辑器向服务授予权限,如下所示:

  1. 打开 Windows 注册表编辑器。
  2. 导航到注册表项 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
  3. 右键单击子项 Control 子项,然后单击“权限”。系统会显示“控件的权限”窗口。
  4. “组或用户名”部分中选择登录的用户。
  5. “权限”部分中,启用“完全控制”“允许”选项。这样便可向机器人授予必要权限。
  6. 单击“应用”和“确定”以确认更改并关闭窗口。
  7. 重启计算机,以使更改生效。

如果您无法进行上述更改,请联系您的网络管理员。

机器人无法下载包

观察到的行为

如果 %UserProfile%\.nuget\Packages 文件夹包含拥有相应项目 .nupkg 文件的包版本,以及没有该文件的包版本,则机器人将无法下载新版包。

原因

此问题会出现在以下特定场景中:

  • 安装 v2019.4 或更高版本的 Studio/机器人。从 Orchestrator 下载并运行程序包。将该程序包安装在 %UserProfile%\.nuget\Packages 文件夹中,并在其中加入相应的 .nupkg 文件。
  • 卸载当前版本的 Studio/机器人。
  • 安装版本低于 2019.4 的 Studio/机器人。从 Orchestrator 下载并运行先前的程序包。未删除旧版程序包,并且新版程序包没有相应的 .nupkg 文件。
  • 将 Studio/机器人升级到 v2019.4 或更高版本。重新下载包失败,出现以下错误:


由于缺少项目对应的 .nupkg 文件,机器人无法下载包。

解决方案

%UserProfile%\.nuget\Packages 文件夹中删除先前安装的包,然后重新下载该包。

会话未断开连接

执行由“启动工作流交互”活动启动的工作流后,会话不会断开连接。如果机器人在 VDI 环境中运行,且“登录到控制台”和“保持会话连接”选项已启用,则会发生会话断开连接。请注意,从 v2018.2 开始,“启动工作流交互”活动已弃用。

“System.Collections.IEnumerable”无法序列化

观察到的行为

在“等待任务然后继续”中使用数据表时,返回以下错误:“异常:类型‘System.Collections.IEnumerable’无法序列化。”

原因

DataRow 不可序列化,因此在暂留工作流时无法序列化 DataRows。如果我们创建一个 DataRow 变量并在此之后尝试等待(暂留),也会出现这种情况。

解决方案

在遍历 DataRows(System.Data.DataRow) 的同时执行“创建表单任务”活动并构建任务对象(输出)的列表。

此后,我们可以使用“并行的遍历循环”或“遍历循环”遍历任务对象(输出)的列表,然后执行“等待任务然后继续”。

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。