_spawnlpe, _wspawnlpe

重要

此 API 不能在 Windows 运行时执行的应用程序。有关更多信息,请参见 CRT 函数不支持与 /ZW

intptr_t _spawnlpe(
   int mode,
   const char *cmdname,
   const char *arg0,
   const char *arg1,
   ... const char *argn,
   NULL,
   const char *const *envp 
);
intptr_t _wspawnlpe(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *arg0,
   const wchar_t *arg1,
   ... const wchar_t *argn,
   NULL,
   const wchar_t *const *envp 
);

参数

  • mode
    调用执行模式处理。

  • cmdname
    要执行的文件的路径。

  • arg0, arg1, ... argn
    列出指向参数。 arg0 参数通常是指向 cmdname。 参数 arg1 通过 argn 是指向窗体新参数列表的字符字符串。 在 argn之后,必须具有标记末尾的 NULL 指针参数列表。

  • envp
    某些属性环境设置的指针。

返回值

从同步 _spawnlpe 或 _wspawnlpe (对于 mode指定的_P_WAIT 的返回值) 作为退出状态的更新过程。 从异步 _spawnlpe 或 _wspawnlpe 的返回值 (有关 mode或 _P_NOWAITO 指定的_P_NOWAIT ) 是处理句柄。 如果处理通常,已停止退出状态为 0。 如果给定进程专门使用非零参数调用 exit 实例,可以设置退出状态到一个非零值。 如果更新过程没有显式设置正退出状态,就象退出状态指示异常退出导致中止或中断。 返回值– 1 表示错误 (更新过程不启动)。 在这种情况下,errno 设置为下列值之一。

  • E2BIG
    参数列表超过 1024 个字节。

  • EINVAL
    mode 参数无效。

  • ENOENT
    未找到文件或路径。

  • ENOEXEC
    使用指定的文件不可执行文件也没有无效可执行 (pe) 文件格式。

  • ENOMEM
    没有足够的内存可用于执行更新过程。

有关这些属性和其他的更多信息返回代码示例,请参见 errno、_doserrno、_sys_errlist和_sys_nerr

备注

这些功能中的每个创建并执行更新过程,通过每命令行参数作为单独的形参并将数组指向环境设置。 这些函数使用 PATH 环境变量查找文件执行。

这些功能验证其参数。 如果 cmdname 或 arg0 空字符串或 null 指针,无效参数调用处理程序,如 参数验证所述。 如果执行允许继续,对 EINVAL的这些功能集 errno,并且返回 -1。 不更新过程为。

要求

实例

必需的标头

_spawnlpe

<process.h>

_wspawnlpe

<stdio.h> 或 <wchar.h>

有关更多兼容性信息,请参见 兼容性

示例

请参见 _spawn, _wspawn功能 中的示例。

.NET Framework 等效项

请参见

参考

处理和环境控件

_spawn, _wspawn功能

abort

atexit

_exec, _wexec功能

exit, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

system, _wsystem