

Как правило, это свидетельствует о том, что объект уже занят одним из запущенных процессов. А как узнать, каким именно?
Очень просто: при помощи бесплатной утилиты WhoLockMe (~70KB). Скачиваем архив, прикрепленный к этому сообщению, и распаковываем его в папку:
%systemroot%/system32 (чтобы открыть эту папку, копируем строку %systemroot%/system32 в меню Run и жмем на Enter).
Теперь здесь же, в меню Run пишем следующее: regsvr32 /s WhoLockMe.dll. Это нужно для регистрации библиотеки wholockme.dll в системе. Напомню, что утилита работоспособна только в ОС Windows линейки NT (на Висте не проверял). Для удаления этого ярлыка из контекстного меню в строке Run пишем regsvr32 /s /u WhoLockMe.dll и жмем на Enter.
Теперь, зайдя в "Проводник" и кликнув правой кнопкой мыши по любому объекту на жестком диске (будь то файл или отдельная папка), можно в контекстном меню обнаружить опцию "Who Lock Me?", активация которой выдаст полный список процессов, "удерживающих" данные:


Доступна следующая информация:
• Locker Name - имя процесса, заблокировавшего файл
• PID - идентификатор процесса
• Opened File - название открытого файла
• Handle - дескриптор файла
• Domain/User - данные о пользователе и домене, в котором он работает
• Locker Full Path - полный путь к исполняемому файлу или модулю процесса
И это не все. Есть еще магическая кнопка Kill Process, позволяющая "прихлопнуть" любой выбранный процесс. Возможен выбор сразу нескольких объектов (это достигается удерживанием клавиши Ctrl).
Вот и все. После того, как процессы, которые удерживали файл были "убиты" (explorer.exe был перезапущен папка спокойно была удалена).
Ну, что можно еще добавить? WhoLockMe - без сомнения, полезный инструмент, который сгодится в хозяйстве любому домашнему пользователю, не говоря уж об админах.
Пользуйтесь на здоровье!
Взято с сайта http://mdforum.dynu.com