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

FpExecLP

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

Declaration

Source position: unix.pp line 80

function FpExecLP(

  const PathName: AnsiString;

  const S: array of AnsiString

):cint;

Description

FpExecLP replaces the currently running program with the program, specified in PathName. S is an array of command options. The executable in PathName is searched in the path, if it isn't an absolute filename. The current environment is passed to the program. On success, FpExecLP does not return.

Errors

Extended error information is returned by the FpGetErrno function:

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

FpExecve

  

Execute process using environment

FpExecv

  

Execute process

FpExecvp

  

Execute process, search path

FpExecle

  

Execute process (using argument list, environment)

FpExecl

  

Execute process (using argument list, environment)

FpFork

  

Create child process

Example

Program Example76;

{ Program to demonstrate the FpExeclp function. }

Uses Unix, strings;

begin
  { Execute 'ls -l', with current environment. }
  { 'ls' is looked for in PATH environment variable.}
  { envp is defined in the system unit.}
  FpExeclp ('ls',['-l']);
end.
The latest version of this document can be found at lazarus-ccr.sourceforge.net.