次の方法で共有


プロセス制御と環境制御

開始、停止、内部の管理にプロセス制御ルーチンをプログラムからプロセスを使用します。 オペレーティング システムの環境に関する情報を取得したり、変更に環境コントロール ルーチンを使用します。

プロセスと環境で機能

ルーチン

使用方法

同等の .NET Framework 関数

中止

atexit と _onexitに登録されているフラッシュ バッファーまたは呼び出し元の関数がないプロセスを中止します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

assert

論理エラーをテストします。

System::Diagnostics::Debug::Assert

_ASSERT、_ASSERTE マクロ

assertに似ていますが、デバッグ バージョンのランタイム ライブラリだけで使用できます。

System::Diagnostics::Debug::Assert

atexit

プログラムの終了のスケジュール ルーチン

System::Diagnostics::Process::Exited

_beginthread、_beginthreadex

Windows オペレーティング システム プロセスの新しいスレッドを作成します。

System::Threading::Thread::Start

_cexit

exit の終了手順 (バッファーをフラッシュなど) で実行され、呼び出し元のプログラムにプロセスを終えないでコントロールを返します。

System::Diagnostics::Process::CloseMainWindow

_c_exit

_exit の終了手順を実行した後、呼び出し元のプログラムにプロセスを終えないでコントロールを返します。

System::Diagnostics::Process::CloseMainWindow

_cwait

別のプロセスが終了するまで待機します。

System::Diagnostics::Process::WaitForExit

_endthread と_endthreadex

Windows オペレーティング システムのスレッドを終了します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

_execl、_wexecl

引数リストで新しいプロセスを実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_execle、_wexecle

引数リストと特定の環境で新しいプロセスを実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_execlp、_wexeclp

PATH の変数と引数リストを使用して新しいプロセスを実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_execlpe、_wexeclpe

、環境変数 PATH を使用して新しいプロセスおよび引数リストが指定された実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_execv、_wexecv

引数配列を持つ新しいプロセスを実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_execve、_wexecve

引数配列および特定の環境に対する新しいプロセスを実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_execvp、_wexecvp

PATH の変数と引数配列を使用して新しいプロセスを実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_execvpe、_wexecvpe

、環境変数 PATH を使用して新しいプロセスおよび引数配列に用意されている実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

exit

関数を atexit と _onexitに登録されている呼び出し、すべてのバッファーをフラッシュし、すべてのファイルを閉じ、プロセスを終了します。

System::Diagnostics::Process::Kill

_exit

atexit または _onexit を呼び出すか、バッファーがフラッシュしないでプロセスを直ちに終了します。

System::Diagnostics::Process::Kill

getenv、バージョンgetenv_s、_wgetenv_s

環境変数の値を取得します。

System::Environment::GetEnvironmentVariable

_getpid

プロセス ID 番号を取得します。

System::Diagnostics::Process::Id

longjmp

保存されたスタック環境を復元してください; 非ローカルの gotoを実行するために使用します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

_onexit

プログラムの終了のスケジュール;ルーチン Microsoft C/C++ Version 7.0 の互換性の以前の使用

System::Diagnostics::Process::Exited

_pclose

関連するパイプの新しいコマンド プロセッサと終了ストリームを待機します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

perror、_wperror

出力エラー メッセージ

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

_pipe

読み取りおよび書き込み用のパイプを作成します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

_popen、_wpopen

パイプを作成し、コマンドを実行します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

_putenv、_wputenv_putenv_s、_wputenv_s

環境変数の値を追加するか、変更します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

raise

呼び出しプロセスにシグナルを送信します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

setjmp

スタック環境を格納します。; 非ローカル gotoを実行するために使用します。

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

とき

ハンドル割り込み場合

使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

_spawnl、_wspawnl

指定した引数リストで新しいプロセスを作成して実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_spawnle、_wspawnle

指定された引数の引数リストと環境で新しいプロセスを作成して実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_spawnlp、_wspawnlp

PATH の変数と指定した引数リストを使用して新しいプロセスを作成して実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_spawnlpe、_wspawnlpe

PATH の変数、指定した環境と引数リストを使用して新しいプロセスを作成して実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_spawnv、_wspawnv

指定された引数の配列を持つ新しいプロセスを作成して実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_spawnve、_wspawnve

指定された環境と引数配列を持つ新しいプロセスを作成して実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_spawnvp、_wspawnvp

PATH の変数と指定された引数の配列を使用して新しいプロセスを作成して実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

_spawnvpe、_wspawnvpe

PATH の変数、指定した環境と引数配列を使用して新しいプロセスを作成して実行します。

System::Diagnostics::Process クラスSystem::Diagnostics::ProcessStartInfo クラス

System、_wsystem

オペレーティング システム コマンドを実行します。

System::Diagnostics::ProcessStartInfo クラスSystem::Diagnostics::Process クラス

Windows オペレーティング システムでは、起動されたプロセスは起動されたプロセスと同じです。 どのプロセスがプロセス ID がわかっている他のプロセスを待機するために _cwait を使用できます。

_spawn の _exec とファミリの違いは _spawn 関数が新しいプロセスから呼び出しプロセスにコントロールを返すことができます。 _spawn 関数では、_P_OVERLAY 呼び出しプロセスが指定されていない場合、新しいプロセスは、メモリにあります。 _exec 関数では、新しいプロセスが呼び出しプロセスに重なって表示されるため、エラーが新しいプロセスの実行を開始する試みで発生しないコントロールが呼び出しプロセスに戻ることはできません。

_exec ファミリの関数ごとに、_spawn ファミリの中の違いは、引数が新しいプロセスに渡すと、次の表に示すように環境を設定するメソッドの新しいプロセス、フォームとして実行するファイルを検索メソッドを示します。 引数の数が一定にまたはコンパイル時に判明しているときに引数リストを渡す関数を使用します。 引数の数が実行時に決定されるときに含める配列へのポインターに引数を渡す関数を使用します。 次の表の情報は、_spawn と _exec 関数のワイド文字の対応するコントロールに適用されます。

" _spawn と_exec 関数ファミリ

関数

ファイルは、PATH 変数を使用します。

引数渡し規約

環境設定

_execl, _spawnl

No

リスト

呼び出しプロセスから継承される

_execle, _spawnle

No

リスト

最後に、新しいプロセスの環境テーブルへのポインター引数として

_execlp, _spawnlp

Yes

リスト

呼び出しプロセスから継承される

_execlpe, _spawnlpe

Yes

リスト

最後に、新しいプロセスの環境テーブルへのポインター引数として

_execv, _spawnv

No

Array

呼び出しプロセスから継承される

_execve, _spawnve

No

Array

最後に、新しいプロセスの環境テーブルへのポインター引数として

_execvp, _spawnvp

Yes

Array

呼び出しプロセスから継承される

_execvpe, _spawnvpe

Yes

Array

最後に、新しいプロセスの環境テーブルへのポインター引数として

参照

関連項目

カテゴリ別ランタイム ルーチン