Как узнать, какие процессы заблокировали папку или файл?

Как вы можете запросить запущенные процессы, чтобы узнать, какие папки или файлы заблокированы? (т.е. вы выбрали диск, и вам сказали, что его нельзя извлечь из-за его использования)

Я бы хотел либо загрузить "с полки", либо написать приложение .NET 3.5, чтобы сделать это (в первую очередь вопрос Windows).

Ответ 1

Process Explorer покажет вам это. Ctrl-F позволит вам искать файл и отображать процесс (ы), в котором этот файл открыт/заблокирован. Затем вы можете закрыть этот дескриптор с помощью Process Explorer.

Там также доступна утилита командной строки oh.exe, доступная для загрузки. Подробнее см. здесь.

Ответ 2

Одной из первых вещей, которые я поставил на своих машинах Windows, является WhoUses. Это хорошо, потому что он тоже с открытым исходным кодом.

Ответ 3

LockHunter - отличный инструмент контекстного меню для Windows.