[Overview][Constants][Types][Procedures and functions][Variables][Index] Reference for unit 'oldlinux' (#rtl)

Execl

Execute process (using argument list)

Declaration

Source position: line 0

procedure Execl(

  const Todo: String

);

procedure Execl(

  const Todo: Ansistring

);

Description

Replaces the currently running program with the program, specified in path. Path is split into a command and it's options. The executable in path is NOT searched in the path. The current environment is passed to the program. On success, execl does not return.

Errors

Errors are reported in LinuxError:

sys_eacces
File is not a regular file, or has no execute permission. A compononent of the path has no search permission.
sys_eperm
The file system is mounted noexec.
sys_e2big
Argument list too big.
sys_enoexec
The magic number in the file is incorrect.
sys_enoent
The file does not exist.
sys_enomem
Not enough memory for kernel, or to split command line.
sys_enotdir
A component of the path is not a directory.
sys_eloop
The path contains a circular reference (via symlinks).

See also

Execve

  

Execute process using environment

Execv

  

Execute process

Execvp

  

Execute process, search path

Execle

  

Execute process (using argument list, environment)

Execlp

  

Execute process (using argument list, environment; search path)

Fork

  

Create child process

Example

Program Example10;

{ Program to demonstrate the Execl function. }

Uses oldlinux, strings;

begin
  { Execute 'ls -l', with current environment. }
  { 'ls' is NOT looked for in PATH environment variable.}
  Execl ('/bin/ls -l');
end.
The latest version of this document can be found at lazarus-ccr.sourceforge.net.