Каким приложением занят файл?

Частенько возникает ситуация, когда операционная система Windows ни за какие коврижки не соглашается удалить файл. Как правило, это свидетельствует о том, что объект уже занят одним из запущенных процессов. А как узнать, каким именно?

Очень просто: при помощи бесплатной утилиты WhoLockMe (74 кб) (http://www.dr-hoiby.com/WhoLockMe/). Проверим?

Моделируем исходную критическую ситуацию, добиваясь следующей картины:

/
 
 
Далее скачиваем архив с программой, распаковываем в выбранную директорию и запускаем файл install.bat для регистрации библиотеки wholockme.dll в системе. Напомним, что утилита работоспособна только в ОС Windows линейки NT.

Теперь, зайдя в Проводник и кликнув правой кнопкой мыши по любому объекту на жестком диске (будь то файл или отдельная папка), можно в контекстном меню обнаружить опцию Who Lock Me?, активация которой выдаст полный список процессов, удерживающих данные.

 <!–IMG2–>/<!–IMG2–>
 
Доступна следующая информация:

 – Locker Name – имя процесса, заблокировавшего файл
 – PID – идентификатор процесса
 – Opened File – название открытого файла
 – Handle – дескриптор файла
 – Domain/User – данные о пользователе и домене, в котором он работает
 – Locker Full Path – полный путь к исполняемому файлу или модулю процесса
И это не все. Есть еще магическая кнопка Kill Process, позволяющая прихлопнуть любой выбранный процесс. Возможен выбор сразу нескольких объектов (это достигается удерживанием клавиши Ctrl).

Ну, что можно еще добавить? WhoLockMe – без сомнения, полезный инструмент, который сгодится в хозяйстве любому пользователю, а уж системным администраторам – тем более. Жаль только, что развитие утилиты застыло на стадии бета-версии еще три года назад…