CreateProcess のサンプルコード | exeファイルを実行する

CreateProcess 関数によりexe ファイルを実行するサンプルです。notepad.exe がユーザにより手動で終了するまで待ちます。

戻り値を確認し、exe の起動に成功したか、 失敗したか判定します。

スポンサーリンク

Visual C++ 向けサンプルコード

#include<windows.h>

int main() 
{
PROCESS_INFORMATION p;
STARTUPINFO s;
ZeroMemory(&s,sizeof(s));
s.cb=sizeof(s); //メモ帳を実行 int ret = CreateProcess(
NULL, // 実行可能モジュールの名
"c:\\Windows\\System32\\notepad.exe", // コマンドラインの文字列
NULL, // セキュリティ記述子
NULL ,// セキュリティ記述子
FALSE, // ハンドルの継承オプション
NULL, // 作成のフラグ
NULL ,// 新しい環境ブロック
NULL, // カレントディレクトリの名前
&s, // スタートアップ情報
&p // プロセス情報 );
if(ret)
{
//notepad.exeの起動に失敗!
}
else
{
CloseHandle(p.hThread);
//メモ帳が終了するまで待つ
WaitForSingleObject(p.hProcess,INFINITE);
CloseHandle(p.hProcess);
}
return 0; }

スポンサーリンク



[Visual C++ サンプルコード | 即戦力ソース集に戻る]

本サンプルコードではエラー処理を省略している場合があります。実践で使用する場合はエラー処理が必要となる場合があります。