Используйте CreateProcess для запуска нового процесса.Включает в себя настройку и передачу в структуру PROCESS_INFORMATION: которая будет содержать дескриптор нового процесса (hProcess), если вызов CreateProcess работает.
Теперь вы можете сделать WaitForSingleObject для этого дескриптора процесса, чтобы увидеть, когдапроцесс заканчивается.WaitForSingleObject позволяет установить тайм-аут, если объект не запускается (т. Е. Процесс не завершается), и, следовательно, выполнить действие (я полагаю, TerminateProcess).