- 入门指南
- 了解 UiPath Robot
- 安装要求
- 为 Unattended 自动化任务安装机器人
- 为 Unattended 自动化配置机器人
- 为 Attended 自动化安装机器人
- 为 Attended 自动化配置机器人
- 集成
- 监管
- 故障排除
配置机器人执行程序,这是在机器人服务启动的隔离会话中运行自动化工作流的 UiPath.Executor.exe 组件。
UiPath 执行程序是 UiPath 软件结构的服务组件,用于运行自动化任务或作业。它是实际执行自动化工作流的组件,您可以在系统服务列表中将其标为UiPath.Executor.exe。
工作方式
在自动化生命周期中,执行程序代表执行阶段:
- 设计阶段——在 Studio 中设计和创建自动化工作流后,系统就会将其发布到 Orchestrator。
- Orchestrator 阶段—Orchestrator 是管理、控制和记录机器人所执行操作的组件。 在这里,您可以安排作业时间或按需运行作业。
- 执行阶段——安排或触发任务后,Orchestrator 会向 UiPath 机器人服务发送命令。然后,机器人服务会启动 UiPath Executor 实例以运行自动化任务。 每个实例均在隔离会话中运行,这样可确保:即便一项任务失败,其他任务也不会受到影响。
- 执行后阶段——任务完成时,执行程序实例终止,结果发回 Orchestrator。执行时间、状态(成功或失败)以及任何异常等详细信息均记录下来,并可用于分析以便排除故障或改进流程。
功能
执行程序的部分功能包括:
- 执行本地或远程任务——UiPath 执行程序既可以在安装了 UiPath 机器人服务的本地设备中执行任务,也可以远程连接到其他设备并在这些设备上执行任务。
- 并发运行作业——执行程序能够同时执行多项自动化任务,每项自动化任务都作为独立的会话运行。
- 负载均衡和任务优先级——执行程序可以与 UiPath Orchestrator 共同有助于平衡多台机器人之间的自动化负载,并根据预定义的规则确定任务的优先级。
- 维护工作流独立——执行程序中的每次执行都是独立的。这意味着一项作业中的错误或失败不会影响其余作业。
备注:
执行程序可自适应不同的 DPI 设置,使工作流能够在任何分辨率下运行。如果某些应用程序无法处理 DPI,那么您可以禁用此特定功能。
基于自动化项目的执行程序类型
UniPath 机器人服务会根据自动化项目推出旨在执行自动化的相关执行程序类型。下列表格总结执行程序可以运行的项目类型,具体取决于所使用的目标框架。
| 项目/执行程序类型 | 架构 | 支持的操作系统 | 使用的框架 |
|---|---|---|---|
| Windows - 旧版 | 32 位 | Windows(x64 和 x86) | .NET Framework 4.6.1 |
| Windows | 64 位 | Windows x64 | 支持 Windows 的 .NET 8 (.NET Core - Windows) |
| 跨平台 | 64 位 | Windows、Linux、MacOS(64 位) | 跨平台支持的 .NET 8 (.NET Core) |
表格中的各行代表不同的执行程序类型,显示如何为了运行项目而根据项目类型、目标操作系统和所用 .NET Framework 版本的特定要求来配置执行程序。这些信息有助于了解哪款执行程序适合哪个项目,确保与目标环境的兼容性,并利用相关框架功能。
执行程序的用户配置
执行程序有专用系统变量UIPATH_HEADLESS_WITH_USER。您可以根据运行自动化的用户的类型和计算机上安装的机器人的版本配置该变量。
当用户是本地系统时,您可以使用 Robot 2021.10 或更高版本运行后台自动化任务。在这里,UIPATH_HEADLESS_WITH_USER的设置应要么是False,要么根本不设置。
当运行自动化的用户具有在 Orchestrator 中指定的凭据时,您应考虑以下三种情况:
- 对于运行后台自动化任务的任何版本机器人,
UIPATH_HEADLESS_WITH_USER设置应为True。 - 对于运行前台自动化的机器人任何版本,均不应设置
UIPATH_HEADLESS_WITH_USER变量。 - 对于使用 Robot 2021.4 或更低版本的前台和后台自动化,均不应设置
UIPATH_HEADLESS_WITH_USER变量。
下表总结执行程序的用户条件。
| 用户类型 | 自动化类型 | UIPATH_HEADLESS_WITH_USER 设置 | 使用此配置的机器人版本 |
|---|---|---|---|
| 本地系统用户 | 后台 | False 或为空 | 2021.10 及更高版本 |
| 在 Orchestrator 中配置的用户 | 后台 |
| 所有版本 |
| 前台 | 不需要变量 | 所有版本 | |
| 任何 | 不需要变量 | 2021.4 及更早版本 |
预加载的执行程序
通常,每个流程均需要一段时间将所需的工作流、包和库加载到内存中才能开始处理。在预加载设置中,这些依赖项已经加载到内存的专用执行槽位中。预加载的执行程序默认处于启用状态。
以下是有关已预加载执行程序的一些关键详细信息:
- 更快速的执行:通过预加载流程,您的机器人可以更快地开始执行任务。
- 资源利用率:借助预加载的执行程序,由于已经在内存中加载了所需的流程,因此机器人消耗的资源更少。
- 可用性:预加载的执行程序主要用于从 Assistant、RobotJS、Studio 或命令行接口开始的 Attended 自动化。Orchestrator 中的 Unattended 作业会启动一个未预加载的执行程序。
用于预加载设置的系统变量
您可以通过在机器人计算机上设置特定环境变量来管理预加载执行程序的行为,如下所示:
| 环境变量 | 值 | 描述 |
|---|---|---|
UIPATH_PRE_LOADED_EXECUTOR | 无 | 覆盖默认行为,仅在第一项作业开始时启动预加载的执行程序。 |
UIPATH_DISABLE_PRE_LOADED_EXECUTOR | True | 禁用预加载的执行程序。 |
工作方式
将UIPATH_PRE_LOADED_EXECUTOR变量添加到系统时,就是配置预加载的设置。 此操作会启动两套执行程序:一套是在作业开始时启动;另一套等待未来作业,即其为预加载的执行程序。 当另一项作业开始时,它会使用预加载的执行程序,并生成另一个预加载的执行程序以等待下一项作业。 简而言之,预加载设置始终确保有可用的执行程序等待作业。
预加载的执行程序和操作系统
对于 Windows 设备,UiPath.Service.UserHost.exe启动时会启动两套预加载的执行程序:一套用于 Windows 项目,另一套用于 Windows-Legacy 项目。
对于 MacOS 设备,UiPath.Service.UserHost.exe启动时,它会为跨平台项目启动一款预加载的执行程序。
Medium+ 完整性提升
某些 Windows 应用程序的运行完整性级别高于标准用户会话。一个常见示例是 Windows CredentialBroker 对话框,当您输入用户名和密码以连接到 Remote Desktop (RDP) 会话时,将显示该对话框。由于 CredentialBroker 以 Medium+ 完整性级别运行,因此在默认情况下,Executor 无法与其交互,而且您的自动化也无法在对话框中输入凭据。
要使执行程序能够自动访问此类窗口,请在机器人计算机上将 UIPATH_MEDIUMPLUS_EXECUTOR 环境变量设置为 1设置此变量后,UiPath 机器人服务会以 Medium+ 完整性级别启动 Executor,使其能够与原本无法访问的窗口交互。
或者,要仅提升特定调用而非整个执行程序,请将 UIPATH_MEDIUMPLUS_INVOKE 计算机(系统)环境变量设置为 1。启用此变量后,调用工作流文件和调用流程活动可以在每次调用时,以 Medium+ 完整性级别运行,其余自动化流程则保持以标准完整性级别运行。
Elevation applies only to invocations that request it — the activity's elevation option must also be enabled; the variable alone does not elevate anything. The elevation option requires UiPath.System.Activities 26.6.0 or later, and for Invoke Workflow File it applies only when the workflow is invoked isolated. As with UIPATH_MEDIUMPLUS_EXECUTOR, this feature is Windows-only and requires UAC to be enabled.
要求
- 仅限 Windows — 此功能在 Linux 或 macOS 上不可用。
- 必须启用 UAC — 能否提升取决于计算机上的用户帐户控制是否处于活动状态。如果禁用 UAC,将忽略该变量,Executor 将以默认完整性级别启动。
- 安装模式 — Robot 必须以服务模式或用户模式,在按计算机模式下安装(安装在
Program Files中)。按用户安装模式不支持 Medium+ 提升。 - 有人值守的自动化 — 变量可以设置为用户或计算机(系统)环境变量。
- 无人值守的自动化 — 变量必须设置为计算机(系统)环境变量。
配置
The UIPATH_MEDIUMPLUS_EXECUTOR environment variable is set from System Properties > Environment Variables on the robot machine:
- For attended automations, the variable can be added under either User variables or System variables. For unattended automations, it must be added under System variables.
- The variable name is
UIPATH_MEDIUMPLUS_EXECUTORand the value is1. - A Robot Service restart is required for the change to take effect.
结果
启用 Medium+ 提升后,您的自动化可以与 CredentialBroker 对话框以及其他需要 Medium+ 完整性的窗口进行交互。如果 Executor 无法在提升级别启动(例如,由于 UAC 被禁用),则会返回到默认完整性级别,并记录警告。