Process

GetScriptPID

function GetScriptPID: TProcessID;

Returns the process ID of the running script.

GetScriptParameters

function GetScriptParameters: TStringArray;

Returns all command line parameters passed to the script.

GetScriptParameter

function GetScriptParameter(Name: String): String;

Returns a command line parameter value passed to the script. Parameters should be passed as a key-pair value: Name=Value

RunScript

function RunScript(Script: String; Parameters: TStringArray; out Output: String): TProcessExitStatus;

Runs a simba script and will wait until the script has finished.

  • The script output will be returned in the Output parameter.

  • Returns the exit status of the scripts process.


RunScript

function RunScript(Script: String; Parameters: TStringArray): TProcessID;

Runs a simba script and instantly returns the scripts PID.

  • The script output will be printed normally.

  • The script PID can be used with process methods. Example:

  PID := RunScript('script.simba', []);
  while IsProcessRunning(PID) do
    Sleep(100);
  WriteLn('Script finished!');

RunScriptOutputToFile

function RunScriptOutputToFile(Script: String; Parameters: TStringArray; OutputFileName: String): TProcessID;
  • The script output will be redirected to the file OutputFileName

  • The script PID can be used with process methods. Example:

  PID := RunScriptOutputToFile('script.simba', [], 'output.txt');
  while IsProcessRunning(PID) do
    Sleep(100);
  WriteLn('Script finished!');

RunCommandInDir

function RunCommandInDir(Directory, Executable: String; Commands: TStringArray): TProcessID;

RunCommandInDir

function RunCommandInDir(Directory, Executable: String; Commands: TStringArray; out Output: String): TProcessExitStatus;

RunCommand

function RunCommand(Executable: String; Commands: TStringArray): TProcessID;

RunCommand

function RunCommand(Executable: String; Commands: TStringArray; out Output: String): TProcessExitStatus;

RunCommandTimeout

function RunCommandTimeout(Executable: String; Commands: TStringArray; out Output: String; Timeout: Integer): Boolean;

IsProcessRunning

function IsProcessRunning(PID: TProcessID): Boolean;

IsProcess64Bit

function IsProcess64Bit(PID: TProcessID): Boolean;

GetProcessPath

function GetProcessPath(PID: TProcessID): String;

GetProcessMemUsage

function GetProcessMemUsage(PID: TProcessID): Int64;

GetProcessStartTime

function GetProcessStartTime(PID: TProcessID): TDateTime;

GetProcessRunnningTime

function GetProcessRunnningTime(PID: TProcessID): UInt64;

TerminateProcess

procedure TerminateProcess(PID: TProcessID);

GetEnvVar

function GetEnvVar(Name: String): String

GetEnvVars

function GetEnvVars: TStringArray