Если я действительно хочу удалить (пустую) папку, даже если кто-то ее открыл, как это можно сделать с C++? С небольшой помощью DOS можно было:
NET FILES
в поле DOS, чтобы определить все открытые файлы,NET FILES id/CLOSE
в поле DOS с каждым идентификаторомRemoveDirectory()
.Как добиться того же чисто в C++? (И я не хочу задерживаться до перезагрузки)
Возможно, это работало в DOS, но в современной ОС это невозможно.
В Windows вы можете использовать MoveFileEx с флагом MOVEFILE_DELAY_UNTIL_REBOOT
если папка используется.
MoveFileEx(folderName, NULL, MOVEFILE_DELAY_UNTIL_REBOOT);
RemoveDirectory()
- он небрежно закрывает даже дескрипторы других сеансов в каталоге. Тогда ошибка, которую я наблюдаю, мой код должен быть чем-то другим - я могу скоро вернуться с лучшим вопросом, это чепуха ...