_execl, _wexecl
加载和执行新的子进程。
重要事项 |
---|
此 API 不能在运行时的窗口执行的应用程序。有关更多信息,请参见 CRT 函数不支持与 /ZW。 |
intptr_t _execl(
const char *cmdname,
const char *arg0,
... const char *argn,
NULL
);
intptr_t _wexecl(
const wchar_t *cmdname,
const wchar_t *arg0,
... const wchar_t *argn,
NULL
);
参数
cmdname
要执行的文件的路径。arg0, ...argn
列出指向参数。
返回值
如果成功,这些函数不返回到调用进程。返回值– 1 表示错误,因此,在 errno 全局变量设置情况下。
errno 值 |
描述 |
---|---|
E2BIG |
对于参数和环境设置所需的空间超过 32 KB。 |
EACCES |
使用指定的文件具有固定或共享的冲突。 |
EINVAL |
无效参数 (一个或多个参数是一个空指针或空字符串)。 |
EMFILE |
打开许多的文件 (必须打开所指定的文件确定它是否可执行文件)。 |
ENOENT |
未找到文件或路径。 |
ENOEXEC |
使用指定的文件不可执行文件也没有无效可执行 (pe) 文件格式。 |
ENOMEM |
没有足够的内存可用于执行更新过程;可用内存损坏;无效或块存在,指示调用过程不正确分配。 |
备注
这些功能中的每一个加载并执行更新过程,通过每命令行参数作为单独的参数。第一个参数是命令或可执行文件,文件名,第二个参数应为与第一个。它成为执行的 argv[0] 处理。第三个参数是第一个参数,argv[1]执行的,处理。
_execl 功能验证方法的参数。如果 cmdname 或 arg0 是 null 指针或空字符串,这些函数调用的参数无效处理程序如 参数验证,如果执行允许继续,这些功能集 errno 所述。EINVAL 并且返回 -1。不更新过程中执行。
要求
功能 |
必需的标头 |
选项标头 |
---|---|---|
_execl |
<process.h> |
<errno.h> |
_wexecl |
<process.h> 或 <wchar.h> |
<errno.h> |
有关更多兼容性信息,请参见中介绍的 兼容性。
示例
在参见 _exec,_wexec 功能的示例。