MFC나 API 에서 외부 실행파일을 실행하는데 가장 많이쓰는게 ShellExcute 인데요 .. 간혹 .. 실행시킨 프로세스가 종료될때까지 대기해야 하는경우가 있습니다 그런때 사용하면 됩니다.
C++
SHELLEXECUTEINFO sei;
::ZeroMemory(&sei, sizeof(SHELLEXECUTEINFO));
sei.cbSize = sizeof(SHELLEXECUTEINFO);
sei.lpFile = _("실행파일");
sei.lpDirectory = _("실행경로");
sei.lpParameters = _T("실행인자");
sei.nShow = SW_HIDE;
sei.fMask = SEE_MASK_NOCLOSEPROCESS;
sei.lpVerb = _T("open");
DWORD result = ::ShellExecuteEx(&sei);
if (sei.hProcess != NULL)
{
// 프로세스 종료까지 대기
WaitForSingleObject(sei.hProcess, INFINITE);
}