_execve、_wexecve

ロードは、新しい子プロセスが実行されます。

重要 : 重要

この API は、Windows のランタイムで実行するアプリケーションで使用することはできません。詳細については、でサポート /ZW CRT 関数" "を参照してください。

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」を参照してください。

解説

これらの関数はコマンド ライン引数へのポインターの配列と環境の設定へのポインターの配列を渡す新しいプロセスを読み込んで実行します。

_execve と _wexecve は、パラメーターを検証します。cmdname が null ポインターの場合、またはが null ポインター argv、空の配列へのポインターである場合、または配列が最初の引数として空の文字列が含まれている場合、これらの関数は パラメーターの検証に説明されているように、無効なパラメーター ハンドラーを呼び出します。実行の継続が許可された場合、これらの関数は errno を EINVAL に設定し、-1 を返します。プロセスが起動します。

必要条件

Function

必須ヘッダー

オプション ヘッダー

_execve

<process.h>

<errno.h>

_wexecve

<process.h> か <wchar.h>

<errno.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

使用例

_exec、_wexec 系関数の例を参照してください。

同等の .NET Framework 関数

参照

関連項目

プロセス制御と環境制御

_exec、_wexec 系関数

abort

atexit

exit、_exit

_onexit、_onexit_m

_spawn 系関数と _wspawn 系関数

system、_wsystem