Runtime module

<< Click to Display Table of Contents >>

Navigation:  Several practical recommendations >

Runtime module

The runtime module is designed to run a prepared task without the main RoboTask application and additional license. However, the runtime module uses the entire engine to run the task.

The application executes the task and exits during normal operation. When an error occurs, the application does not finish automatically and offers to read the task execution log.

 

Command line:

RoboTaskRuntime.exe <Task_File_Name> [/stop|/nonstop] [/out:<full_file_name>] [/taskparam:<task_parameters>]

 

<Task_File_Name> - full name of task file

/stop - (optional) if you want to stop the application before exiting anyway to read the log

/nonstop - (optional) the application is forced to continue running and exit even if the task stops with an error. In this case, it is better to write the log to a file (see the /out: parameter)

/out - (optional) output task execution log to a file

/taskparam - (optional) task parameters

 

Small notes on parameters.

Spaces in command-line parameters are not allowed. A space serves as a delimiter for command-line parameters. How to resolve this issue is described below.

 

Parameter Task_file_name

The task file name may contain spaces. Simply enclose the file name in double quotes.

 

Parameter /out

The file name in the /out parameter may contain spaces. In this case, just enclose the file name in double quotes. For example:

/out:"c:\folder name\file name with spaces.log"

In this case, the system will treat the entire string as a single parameter, and the file name will be passed to the application correctly.

 

Parameter /taskparam

Dealing with this parameter is a bit more complex. Task parameters consist of multi-line text. Each line is represented as an equality (as in the actions Start Task or Start Remote Task).

ParameterName=ParameterValue

 

A line break signifies the end of the command line. If a parameter contains quotes, they must be escaped to avoid confusion.

Just mask prohibited characters as in an HTTP request:

Space – %20

Quote char – %22

Line break – %0A

 

Suppose we need to pass the following parameters:

Param1=Hello world!

Param2=simple string with spaces

 

In this case, in the command line, you write:

/taskparam:Param1=Hello%20world!%0AParam2=simple%20string%20with%20spaces

 

You can simplify this by enclosing the expression in quotes. However, you need to replace line break and quote characters in parameters with %10 and %22, respectively.

For example:

/taskparam:"Param1=Hello world!%0AParam2=simple string with spaces%0Aparam3=string with %22quotes%22"

 

Note:

To automatically encode text, you can use the "HTTP encode/decode" action. Let's assume we need to pass the following parameters:

Param1=Hello world!

Param2=simple string with spaces and "quotes"

"HTTP encode/decode" will encode this text into a string strictly following the encoding rules:

Param1%3DHello+world!%0D%0AParam2%3Dsimple+string+with+spaces+and+%22quotes%22

You can use this string in the parameter line without any changes:

/taskparam:Param1%3DHello+world!%0D%0AParam2%3Dsimple+string+with+spaces+and+%22quotes%22

 

The Runtime module will expand the variables before executing the task, and the result will be the same in both cases.

 

Passing parameters allows you to perform the same task simultaneously, for example, processing different files using the same algorithm.

 

It should be remembered that the runtime module guarantees the correct execution of autonomous tasks. That is, there are some restrictions:

The runtime module does not have access to other RoboTask tasks. Accordingly, it cannot perform actions with other tasks: launch, enumerate, check the status, etc.

The runtime module does not have access to RoboTask global variables.

The runtime module does not process the task triggers. The task can only be started from the command line.

 

To install the engine only with runtime module on separate computer use the command line of setup program:

RobotaskSetup.exe /COMPONENTS=engine

 

By default setup application installs all modules and components. To force install all components, use the following command line:

RobotasSetup.exe /TYPE=full