В моих приложениях (VB6 и C # 2008) в Windows 2003 дважды я видел похожее поведение при удалении папок, содержащих файлы. Мой код создаст несколько временных папок и создаст файлы в этой папке для последующей обработки. По завершении обработки мой код попытается удалить созданную временную папку. Операция удаления завершается без ошибок.
Однако, при дальнейшей проверке вы увидите, что папка все еще существует в проводнике Windows. Попытка просмотреть эту папку приводит к ошибке отказа в разрешении. Позже приложение обработает еще один раунд файлов и попытается снова создать временную папку. К сожалению, предыдущее отложенное удаление еще не завершено, поэтому попытка создать папку снова приводит к ошибке отказа в доступе. Папка действительно не удаляется, пока я не закрою свое приложение. Как только приложение закрывается, папка удаляется. Почему операции удаления моей папки не выполняются до тех пор, пока приложение не будет закрыто?