_execvpe, _wexecvpe
加载和运行新的子进程。
重要
此 API 不能在 Windows 运行时执行的应用程序。有关更多信息,请参见 CRT 函数不支持与 /ZW。
intptr_t _execvpe(
const char *cmdname,
const char *const *argv,
const char *const *envp
);
intptr_t _wexecvpe(
const wchar_t *cmdname,
const wchar_t *const *argv,
const wchar_t *const *envp
);
参数
cmdname
执行文件的路径。argv
某些属性参数的指针。envp
某些属性环境设置的指针。
返回值
如果成功,这些函数不返回到调用进程。 返回值– 1 表示错误,因此,在 errno 全局变量设置情况下。
errno 值 |
描述 |
---|---|
E2BIG |
对于参数和环境设置所需的空间超过 32 KB。 |
EACCES |
使用指定的文件具有固定或共享的冲突。 |
EMFILE |
许多文件处于打开状态。 (必须打开所指定的文件确定它是否可执行文件。) |
ENOENT |
未找到文件或路径。 |
ENOEXEC |
使用指定的文件不可执行文件也没有无效可执行 (pe) 文件格式。 |
ENOMEM |
没有足够的内存可用于执行更新过程;可用内存损坏;无效或块存在,指示调用过程不正确指派。 |
有关这些属性和其他的更多信息返回代码示例,请参见 errno、_doserrno、_sys_errlist和_sys_nerr。
备注
这些功能中的每一个加载并执行更新过程和通过一组指向命令行参数和一组指向环境设置。 这些函数使用 PATH 环境变量查找文件执行。
_execvpe 功能验证方法的参数。 如果 cmdname 是 null 指针,或者,如果 argv 是 null 指针、指针为空数组或指针到包含一个空字符串作为第一个参数数组,这些函数调用的参数无效处理程序,如 参数验证所述。 如果执行允许继续,对 EINVAL 的这些功能集 errno 并且返回 -1。 不保存进程中启动。
要求
功能 |
必需的标头 |
选项标头 |
---|---|---|
_execvpe |
<process.h> |
<errno.h> |
_wexecvpe |
<process.h> 或 <wchar.h> |
<errno.h> |
有关更多兼容性信息,请参见 兼容性。
示例
请参见 _exec, _wexec功能 中的示例。