- Release Notes
- Getting Started
- Setup and Configuration
- Automation Projects
- Dependencies
- Types of Workflows
- File Comparison
- Automation Best Practices
- Source Control Integration
- Debugging
- The Diagnostic Tool
- Workflow Analyzer
- About Workflow Analyzer
- ST-NMG-001 - Variables Naming Convention
- ST-NMG-002 - Arguments Naming Convention
- ST-NMG-004 - Display Name Duplication
- ST-NMG-005 - Variable Overrides Variable
- ST-NMG-006 - Variable Overrides Argument
- ST-NMG-008 - Variable Length Exceeded
- ST-NMG-009 - Prefix Datatable Variables
- ST-NMG-011 - Prefix Datatable Arguments
- ST-NMG-012 - Argument Default Values
- ST-NMG-016 - Argument Length Exceeded
- ST-DBP-002 - High Arguments Count
- ST-DBP-003 - Empty Catch Block
- ST-DBP-007 - Multiple Flowchart Layers
- ST-DBP-020 - Undefined Output Properties
- ST-DBP-023 - Empty Workflow
- ST-DBP-024 - Persistence Activity Check
- ST-DBP-025 - Variables Serialization Prerequisite
- ST-DBP-026 - Delay Activity Usage
- ST-DBP-027 - Persistence Best Practice
- ST-DBP-028 - Arguments Serialization Prerequisite
- ST-USG-005 - Hardcoded Activity Arguments
- ST-USG-009 - Unused Variables
- ST-USG-010 - Unused Dependencies
- ST-USG-014 - Package Restrictions
- ST-USG-020 - Minimum Log Messages
- ST-USG-024 - Unused Saved for Later
- ST-USG-025 - Saved Value Misuse
- ST-USG-026 - Activity Restrictions
- ST-USG-027 - Required Packages
- ST-USG-028 - Restrict Invoke File Templates
- Variables
- Arguments
- Imported Namespaces
- Recording
- UI Elements
- Control Flow
- Selectors
- Object Repository
- Data Scraping
- Image and Text Automation
- Automating Citrix Technologies
- RDP Automation
- Salesforce Automation
- SAP Automation
- VMware Horizon Automation
- Logging
- The ScreenScrapeJavaSupport Tool
- The WebDriver Protocol
- Test Suite - Studio
- Extensions
- Troubleshooting
- About troubleshooting
- Microsoft App-V support and limitations
- Internet Explorer X64 troubleshooting
- Microsoft Office issues
- Identifying UI elements in PDF with Accessibility options
- Repairing Active Accessibility support
- JxBrowser applications troubleshooting
- User Events Monitoring
- Citrix Troubleshooting
- Automating Applications Running Under a Different Windows User
UiPath Remote Runtime
UiPath Remote Runtime is a component which facilitates the communication between a remote application or desktop, such as Citrix Virtual Apps, and the dedicated UiPath extension - the UiPath Extension for Citrix, the UiPath Extension for Windows Remote Desktop and Apps, or the UiPath Extension for VMware Horizon. It gathers info about targeted UI elements of remote applications and sends them to the corresponding extension so that selectors are natively generated in UIExplorer.
Starting with Citrix Virtual Apps and Desktops 7 2109, all custom virtual channels are blocked by default.
This prevents the UiPath Remote Runtime from working correctly.
To solve this issue the UiPath virtual channel must be added to the allow list policy:
UIPCTX,C:\Program Files
(x86)\UiPath\RemoteRuntime\UiPathRemoteRuntime.exe
The Remote Runtime component was granted a Citrix Ready certification, making it a trusted, effective solution for working with Citrix technologies.
Depending on the type of environment you want to build your automation projects on, the UiPath Remote Runtime component can be installed as follows:
- On Citrix Application servers - communicates with the UiPath Extension for Citrix.
- On VMware Horizon virtual machines - communicates with the UiPath Extension for VMware Horizon.
- On Windows Remote Desktop machines - communicates with the UiPath Extension for Windows Remote Desktop and Apps.
Please note that the corresponding UiPath extensions need to be installed on the client machine.
UiPathRemoteRuntime.msi
installer can be downloaded
from:
- Product Downloads in the UiPath Customer Portal
- Resource Center in the UiPath Automation Cloud. To access Resource Center, log in to your Automation Cloud Organization and click the Help button on the navigation bar.
UiPathRemoteRuntime.exe
process is started
at every user login.
The UiPath Remote Runtime component is required to establish the connection between an application or desktop server and a corresponding UiPath extension installed on a client machine. This way, selectors are natively generated on the client machine where Studio is installed, without having to rely on OCR and image recognition activities.
UiPathRemoteRuntime.msi
installer, which you can choose to disable, if necessary.
The Remote Runtime Task Schedule entry can be added or removed via the installer or the Command Prompt, as you can see in the following sections.
- Run the
UiPathRemoteRuntime.msi
file to install the UiPath Remote Runtime. It needs to be installed on all the Citrix Application servers or the Windows Remote Desktop machines on which you want to create your automation projects. - Log off from the current Citrix window or RDP session on the client machine and log back in. This is required so that your changes take effect.
- Install either the UiPath Extension for Citrix or the UiPath Extension for Windows Remote Desktop and Apps on the client machine, depending on the technology on which you want to create your automation projects.
You can also choose to deploy the extension for Java, Chrome, and Citrix from the installer, as well as the Task Schedule entry, by selecting the corresponding options, as depicted below:
UiPathRemoteRuntime.msi
installer and choose the corresponding option.
- Click the Windows Start button and type
cmd
in the search field. - Right click on Command Prompt and run it as administrator.
- Change the directory to the
UiPathRemoteRuntime.msi
folder (For example:cd C:\Tools\Studio
). - Use the
UiPathRemoteRuntime.msi ADDLOCAL=RemoteRuntime,RemoteRuntimeTask
command to install the UiPath Remote Runtime component. - Log off from the current Citrix window or RDP session on the client machine and log back in. This is required so that your changes take effect.
- Install either the UiPath Extension for Citrix or the UiPath Extension for Windows Remote Desktop and Apps on the client machine, depending on the technology on which you want to create your automation projects.
RemoteRuntimeTask
, JavaBridge
, ChromeExtension
, EdgeChromium
or CitrixClient
arguments to install the extension for Task Scheduler entry, Java, Chrome, Microsoft Edge or Citrix extensions as exemplified
below:
UiPathRemoteRuntime.msi ADDLOCAL=RemoteRuntime,RemoteRuntimeTask,JavaBridge,ChromeExtension,EdgeChromium,CitrixClient
- installs the Remote Runtime component, the Task Scheduler entry, the extension for Java, the extension for Chrome, the extension for Microsoft Edge, and the extension for Citrix.
/quiet
parameter:
UiPathRemoteRuntime.msi ADDLOCAL=RemoteRuntime,RemoteRuntimeTask /quiet
- silently installs the Remote Runtime component and the Task Scheduler entry.
APPLICATIONFOLDER
option:
UiPathRemoteRuntime.msi APPLICATIONFOLDER="D:\UiPathRemoteRuntime" ADDLOCAL=RemoteRuntime,RemoteRuntimeTask /quiet
- silently installs the Remote Runtime component inD:\UiPathRemoteRuntime
, and adds the Task Scheduler entry.
You can now create processes to automate on Citrix Virtual Apps and Desktops, as well as over RDP connections just as you would on a standard machine. Because of the corresponding extensions, OCR and Image recognition activities are no longer required to properly identify UI elements. Instead, elements are natively recognized and can be used with any activity.
The UiPath Remote Runtime and the UiPath driver dependency for the UiPath.UIAutomation.Activities package must have the same version. However, when the UiPath Remote Runtime is upgraded to match a new UiPath driver dependency for the UiPath.UIAutomation.Activities package, the UiPath Remote Runtime remains backward compatible with all previously installed versions.
UiPathRemoteRuntime.msi
properties.
The version of the UiPath driver dependency is displayed in the Package Manager in the UiPathUIAutomation.Activities package info section.
You can view the dependencies shipped with each version of the UiPath.UIAutomation.Activities package on this page.
When you start a process, the Robot sends out the necessary commands to the extension for Citrix or Windows Remote Desktop via an RPC channel. This information package also contains details about the version of the UIAutomation package used to build the process.
The corresponding extension then forwards the information package via an ICA virtual channel to the UiPath Remote Runtime component, which is on the Citrix Application servers or Remote Desktop machine.
Depending on the version of the UIAutomation package with which the process was built, the UiPath Remote Runtime component instructs the Robot Executor which driver to use.
Communication between the Remote Runtime Component and the corresponding extension is done via an internally-developed ICA channel. Multiple ICA channels can be used, but the Citrix Receiver, for instance, already uses several channels for the clipboard, audio, and more.
Once the Remote Runtime component is installed, you can create your automation projects without having to create any firewall rules.
Data transfer between the Remote Runtime and extension requires little bandwidth usage. For example, each action the Robot performs (such as a Click activity) transfers around 3 KB of data.
The UiPath Remote Runtime component was first introduced in v2018.4. To ensure backward compatibility, newer versions of the Robot (such as a v2019.10.1 Robot) are able to execute processes created with the UIAutomation package version 18.4.5 and greater without any issues.
%ProgramFiles(x86)%\UiPath
folder. All installed versions are visible in the %ProgramFiles(x86)%\UiPath\RemoteRuntime\packages\uipath
folder.
When you build or execute a process you need to use a UiPath.UIAutomation.Activities package which is compatible with the deployed driver version of the UiPath Remote Runtime. The driver is represented by the UiPath dependency of the UiPath.UIAutomation.Activities package.
This page displays which UiPath.UIAutomation.Activities package contains compatible driver versions for the UiPath Remote Runtime.
UiPathRemoteRuntime.msi
installer contains the latest UiPath dependency, as well as the latest supported Long Term Support (LTS) UiPath dependency.
Please note that if you use a version of the UiPath.UIAutomation.Activities package which does not contain one of the UiPath dependencies mentioned above, selectors are not generated and an exception is thrown, as displayed below.
Interactive selection on the target application does not build correct selectors unless the UiPath.UIAutomation.Activities matches the UiPath Remote Runtime dependency on the Citrix Application server or the Remote Desktop machine.
For example, if you want to build an automation project using the UiPath.UIAutomation.Activities package version 19.6.0, you also need to copy the corresponding UiPath dependency from the client machine (where Studio is installed) on the Citrix Application server or the Remote Desktop machine. This is done as follows:
- On the client machine (where Studio is installed), navigate to the
%UserProfile%\.nuget\packages\uipath
folder. All installed UiPath dependencies are located there. - Copy the version which corresponds to the UiPath.UIAutomation.Activities package you want to use. You can view the list of dependencies shipped the UiPath.UIAutomation.Activities package on this page.
- On the Citrix Application server or the Remote Desktop machine, navigate to the
%ProgramFiles(x86)%\UiPath\RemoteRuntime\packages\uipath
folder and paste the previously copied UiPath dependency version here.
Selectors are now properly generated with your current version of the UiPath.UIAutomation.Activities. Changes take effect as soon as the dependency is copied.
The UiPath Remote Runtime has the same requirements as the UiPath Robot. See the full list of requirements here.
- About UiPath Remote Runtime
- Task Scheduler
- Installing the UiPath Remote Runtime
- From the Installer
- From the Command Prompt
- Driver Dependencies
- Remote Runtime Architecture
- Multiple ICA Channels
- Data Transfer and Bandwidth Considerations
- Side-by-side support
- Adding Remote Runtime dependencies
- Hardware and Software Requirements