C++ код: ShellExecute(NULL, "open", file_name.c_str(), NULL, NULL, SW_SHOW); remove(file_name.c_str()); Пытаюсь сделать так, чтобы после выполнения этот файл удалялся. Пытался так и запустить - файл не успевает открыться. Пытался через WaitForSingleObject, но он выдаёт WAIT_FAILED(GetLastError = 5) Подскажите, пожалуйста, как лучше поступить в данной ситуации.
Через ShellExecute насколько я помню у тебя немного не тот HANDLE возвращается. А вот через CreateProcess если сделашь - должно быть ок.
Юзай ShellExecuteEx с fMask = SEE_MASK_NOCLOSEPROCESS, забирай у него hProcess и отдавай в WaitForSingleObject()