共用方式為


_execve _wexecve

載入並執行新的子處理程序。

重要

這個 API 不能用於 Windows 執行階段執行的應用程式。如需詳細資訊,請參閱 CRT 函式不支援使用 /ZW

intptr_t _execve( 
   const char *cmdname,
   const char *const *argv,
   const char *const *envp 
);
intptr_t _wexecve( 
   const wchar_t *cmdname,
   const wchar_t *const *argv,
   const wchar_t *const *envp 
);

參數

  • cmdname
    欲執行的檔案路徑。

  • argv
    陣列參數的指標。

  • envp
    指向環境設定的指標的陣列。

傳回值

如果成功的話,這些函式將不會回傳給呼叫處理程序。 回傳值 -1 表示發生錯誤,此時 errno 將會被設置。

errno 值

描述

E2BIG

參數和環境設定的空間需求超過 32 KB 。

EACCES

指定的檔案發生鎖定或分享衝突。

EINVAL

無效參數。

EMFILE

開啟太多檔案 (指定的檔案必須開啟以決定是否可執行) 。

ENOENT

找不到檔案或路徑。

ENOEXEC

指定的檔案無法執行或可執行檔格式無效。

ENOMEM

執行新的處理程序的可用記憶體不足,可用記憶體已毀損,或存在無效區塊,表示呼叫處理程序沒有被適當地配置。

如需更多關於這些和其他回傳碼的資訊,請參閱 _doserrno 、 errno 、 _sys_errlist 、和 _sys_nerr (_doserrno, errno, _sys_errlist, and _sys_nerr)

備註

這些函式都會載入並執行處理序,透過指標陣列命令列引數和指標陣列環境設定。

_execve 和 _wexecve 驗證它們的參數。 如果 cmdname 為 null 指標,則為,如果 argv 為 null 指標,則為空白陣列的指標,或者,如果陣列包含空字串做為第一個引數,這些函式叫用無效的參數處理常式如 參數驗證中所述。 如果允許繼續執行,這些函式將 EINVAL 設置為 errno 並回傳 -1 。 處理序尚未啟動。

需求

Function

必要的標頭檔

選擇性標頭

_execve

<process.h>

<errno.h>

_wexecve

<process.h> 或 <wchar.h>

<errno.h>

如需更多關於相容性的資訊,請參閱入門介紹中的 相容性 (Compatibility)

範例

請參閱在 _exec 、 _wexec 函式 (_exec, _wexec Functions) 的範例。

.NET Framework 對等用法

請參閱

參考

處理程序和環境控制

_exec,_wexec 函式

abort

atexit

exit、_exit

_onexit _onexit_m

_spawn,_wspawn 函式

system _wsystem