About UiPath Remote Runtime
link
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.
Note:
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.
The 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.
Once the UiPath Remote Runtime component is installed, it registers a task in the TaskScheduler so that the 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.
Task Scheduler
link
By default, the UiPath Remote Runtime component creates an entry in Windows Task Scheduler to automatically start every time the corresponding user logs in. This feature is represented by the Create Launch UiPathRemoteRuntime task option in the 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.
Installing the UiPath Remote Runtime
link
From the Installer
link
- 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:
The Task Scheduler entry for the Remote Runtime can be added or removed at any moment. Simply run the UiPathRemoteRuntime.msi
installer and choose the corresponding option.
From the Command Prompt
link
Note: Installing the UiPathRemoteRuntime.msi requires administrator rights.
- 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.
Additionally, you can use the 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.
You can also perform a silent installation by using the /quiet
parameter:
UiPathRemoteRuntime.msi ADDLOCAL=RemoteRuntime,RemoteRuntimeTask /quiet
- silently installs the Remote Runtime component and the Task Scheduler entry.
You can install the UiPath Remote Runtime at any location using the 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.
Driver Dependencies
link
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.
The Remote Runtime version is dictated by the Comments field, located in the Details tab of the 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.
Remote Runtime Architecture
link
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.
Multiple ICA Channels
link
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.
Data Transfer and Bandwidth Considerations
link
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.
Side-by-side support
link
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.
It is installed on the Citrix Application server or Remote Desktop machine in the %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.
Each 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.
Adding Remote Runtime dependencies
link
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.
Hardware and Software Requirements
link
The UiPath Remote Runtime has the same requirements as the UiPath Robot. See the full list of requirements here.