FpExecLP¶
Execute process (using argument list, environment; search path).
Declaration¶
Source position: unix.pp line 125
function FpExecLP(const PathName: RawByteString;
const S: Array of RawByteString = type string(CP_NONE))
: 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 component 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¶
| Name | Description |
|---|---|
| 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.