_execlp _wexeclp
載入並執行新的子處理程序。
重要
這個 API 不能用於 Windows 執行階段執行的應用程式。如需詳細資訊,請參閱 CRT 函式不支援使用 /ZW。
intptr_t _execlp(
const char *cmdname,
const char *arg0,
... const char *argn,
NULL
);
intptr_t _wexeclp(
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 |
指定的檔案無法執行或可執行檔格式無效。 |
ENOMEM |
執行新的處理程序的可用記憶體不足,可用記憶體已毀損,或存在無效區塊,表示呼叫處理程序沒有被適當地配置。 |
如需更多關於這些和其他回傳碼的資訊,請參閱 _doserrno 、 errno 、 _sys_errlist 、和 _sys_nerr (_doserrno, errno, _sys_errlist, and _sys_nerr) 。
備註
這些函式都會載入並執行處理序,只要一命令列引數當做個別參數和 PATH 使用環境變數來尋找檔案執行。
_execlp 函式會驗證它們的參數。 如果 cmdname 或 arg0 為 null 指標或空字串,這些函式叫用無效的參數處理常式如 參數驗證中所述。 如果允許繼續執行,這些函式將 EINVAL 設置為 errno 並回傳 -1 。 不會啟動新的處理程序。
需求
Function |
必要的標頭檔 |
選擇性標頭 |
---|---|---|
_execlp |
<process.h> |
<errno.h> |
_wexeclp |
<process.h> 或 <wchar.h> |
<errno.h> |
如需更多關於相容性的資訊,請參閱入門介紹中的 相容性 (Compatibility) 。
範例
請參閱在 _exec 、 _wexec 函式 (_exec, _wexec Functions) 的範例。
.NET Framework 對等用法
System::Diagnostics::Process 類別 (System::Diagnostics::Process Class)
System::Diagnostics::ProcessStartInfo 類別 (System::Diagnostics::ProcessStartInfo Class)