К сожалению это слишком сложно, поэтому хочу обратить ваше внимание на функцию
CreateProcess, вы создаете новый процесс посредством это функции в режиме отладки
и обрабатываете дебаг сообщение EXIT_PROCESS_DEBUG_EVENT - наилучший способ, поверьте!
При создании процесса побеспокойтесь, чтоб цикл обработки дебаг сообщений работал в другом потоке, так вы дадите вашему приложению реагировать на запросы поьзователя и не повесите его в бесконечном цикле.