Создаю файл с флагом FILE_FLAG_DELETE_ON_CLOSE, то есть файл должен удалиться системой, как только будут освобождены все хендлы этого файла.
Затем, запускаю некий процесс, указав данный файл в параметрах командной строки. Процесс запускается, открывает файл, работает с ним.
Вопрос: как после запуска процесса узнать, что файл уже открыт им (чтоб закрыть первый хендл файла)? Ведь если я закрою первый хендл до того, как процесс откроет файл, процесс этот файл уже не увидит.
Для наглядности приведу последовательность действий
HANDLE f=CreateFile("file.txt",...... FILE_FLAG_DELETE_ON_CLOSE.....);
CreateProcess(...,"programm.exe \"file.txt\"",.....);
//тут нужно как-то узнать, открыл ли процесс файл
//дождались, теперь можно закрыть первый хендл файла
CloseHandle(f);