次の方法で共有


_execl、_wexecl

新しい子プロセスを読み込んで実行します。

重要

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

intptr_t _execl( 
   const char *cmdname,
   const char *arg0,
   ... const char *argn,
   NULL 
);
intptr_t _wexecl(
   const wchar_t *cmdname,
   const wchar_t *arg0,
   ... const wchar_t *argn,
   NULL 
);

パラメーター

  • cmdname
    実行されるファイルのパス。

  • arg0, ...argn
    パラメーターへのポインターのリスト。

戻り値

成功した場合、これらの関数が呼び出しプロセスに戻ることはありません。 戻り値 –1 はエラーを示し、この場合は errno グローバル変数が設定されます。

errno の値

説明

E2BIG

引数と環境設定には、32 KB を超える領域が必要です。

EACCES

指定されたファイルでロック違反または共有違反が発生しています。

EINVAL

無効なパラメーター (1 つまたは複数のパラメーターが null ポインターまたは空の文字列の場合)。

EMFILE

開いているファイルの数が多すぎます (指定されたファイルは、実行可能ファイルであるかどうかを確認するために開く必要があります)。

ENOENT

ファイルまたはパスが見つかりません。

ENOEXEC

指定されたファイルが実行可能ファイルでないか、無効な実行可能ファイル形式です。

ENOMEM

新しいプロセスを実行するのに十分なメモリがないか、使用できるメモリが破損しているか、または無効なブロックが存在します (呼び出しプロセスが正しく割り当てられていないことを示します)。

解説

これらの各関数は新しいプロセスを読み込んで実行し、各コマンド ライン引数を個別のパラメーターとして渡します。 1 番目の引数はコマンドまたは実行可能ファイルの名前で、2 番目の引数は、1 番目と同じにする必要があります。 これは、実行されるプロセスの argv[0] になります。 3 番目の引数は、実行されるプロセスの 1 番目の引数 argv[1] です。

_execl 関数は、パラメーターを検証します。 cmdname または arg0 が null ポインターまたは空の文字列の場合、これらの関数は、「パラメーターの検証」に説明されているように無効なパラメーター ハンドラーを呼び出します。実行の継続が許可された場合、これらの関数は errno を EINVAL に設定し、-1 を返します。 新しいプロセスは実行されません。

必要条件

関数

必須ヘッダー

オプション ヘッダー

_execl

<process.h>

<errno.h>

_wexecl

<process.h> または <wchar.h>

<errno.h>

互換性の詳細については、「互換性」を参照してください。

使用例

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

同等の .NET Framework 関数

参照

関連項目

プロセス制御と環境制御

_exec、_wexec 系関数

abort

atexit

exit、_exit

_onexit、_onexit_m

_spawn 系関数と _wspawn 系関数

system、_wsystem