как узнать в каком процессе используется файл
Как узнать, какой процесс блокирует файл или папку в Windows
Как я могу узнать, какой процесс блокирует файл или папку в Windows? Например, при попытке удалить папку Windows сообщает следующее:
Операция не может быть завершена, так как эти папка или файл открыты в другой программе. Закройте папку или файл и повторите попытку.
Такая же ошибка может возникнуть при переименовании или удаления как папки, так и файла. Но как узнать, какая программа или приложение в настоящее время использует его и не позволяет удалить файл или папку?
Имеется сразу несколько способов и программ чтобы найти процессы и программы, которые открыли файл.
1. Монитор ресурсов
Для поиска программы или процесса, открывшей файл, вы можете использовать Монитор ресурсов (Resource Monitor), который встроен в Windows 7, 8 и 10.
Откройте Монитор ресурсов, это можно сделать несколькими способами:
В Мониторе ресурсов перейдите на вкладку ЦП (CPU). Используйте поле поиска в разделе «Связанные дескрипторы»
В результатах поиска в столбце «Образ» вы увидите, какая программа запустила процесс, блокирующий файл.
Здесь же вы можете кликнуть правой кнопкой мыши по любому найденному процессу и нажать «Завершить процесс», чтобы закрыть программу, блокирующую файл.
2. Process Explorer
Process Explorer — это официальная программа от Microsoft/SysInternals, которую можно скачать по ссылке: https://download.sysinternals.com/files/ProcessExplorer.zip
Перейдите в Find → Handle or DLL.
В текстовом поле «Handle or DLL substring:» введите путь до файла или папки. Будут показаны все процессы, которые имеют открытый обработчик на этот файл.
3. OpenedFilesView
OpenedFilesView это бесплатная программа не требующая установки, она покажет все открытые файлы, имеется возможность искать по имени или пути файла:
4. LockHunter
LockHunter — это надёжная программа для разблокировки файлов.
Это бесплатный инструмент для удаления файлов, заблокированных неизвестным процессом. LockHunter полезен для борьбы с вредоносными программами и другими программами, которые блокируют файлы без причины. В отличие от других подобных инструментов, он удаляет файлы в корзину, поэтому вы можете восстановить их, если удалили по ошибке.
Как узнать в каком процессе используется файл
Один из них такой: А вот как определить процесс, если этим процессом является драйвер?
В таких случаях Unlocer пишет, что процесс не блокирован, но удалить, переместить, переименовать файл можно только при перезагрузке.
NirSoft OpenedFilesView кроме того, что это процесс системный, тоже не пишет ничего.
Ни Process Explorer, ни Process Monitor, ни другие утилиты не пишут каким процессом занят файл, если этим процессом является какой-нибудь драйвер.
В папке C:\Windows\Temp у меня появился фай TmpFile1.
Разер файла 8 409 088 Байт (ровно 16424 кластера).
Удалить, переместить, переименовать его ничем не возможно.
Определить, какой процесс его создает, тоже не получается.
«Методом тыка» и путем «гугления» проблемы, путем проб и ошибок, было найдено, что этим процессом является драйвер.
Короче, с какой-то программой, даже не знаю какой, установился алладиновский драйвер защиты Driver Sentinel HASP.
Если проделать операции Диспетчер устройств >>> Вид >>> Показать скрытые устройства >>> Драйверы несамонастраиваемых устройств >>> aksdf >>> Свойства >>> Драйвер >>> Остановить, то файл C:\Windows\Temp\TmpFile1 сразу же исчезает, но при включении драйвера он сразу же появляется опять.
Так же, когда у меня стоял Kaspersky Cristal, какой-то один из его драйверов так же создавал в папке C:\Windows\Temp какие-то файлы, которые так же удалить, переместить, переименовать было невозможно, которые так же сами исчезали после отключения драйвера и появлялись после включения.
Вот и основной вопрос: «Как программно, не «методом тыка», не «гуглением», а средствами Windows, определить, каким процессом занят файл, если этим процессом является драйвер?»
Всего записей: 125 | Зарегистр. 08-01-2013 | Отправлено: 15:40 29-11-2016 | Исправлено: aleksey1965, 15:41 29-11-2016
——- Сообщения: 7 ——- Сообщения: 830 ——- Сообщения: 830 ——- Сообщения: 36074 Сообщения: 3306 Узнайте, какой процесс блокирует файл или папку в WindowsКак я могу узнать, какой процесс блокирует файл или папку в Windows? Например, при попытке удалить папку Windows сообщает об этом:
Происходит то же самое с файлом, но как мне узнать, какая программа или приложение использует его в настоящее время и не позволяет мне удалить файл или папку? В openfiles команде должна быть включена поддержка локальных файлов при запуске openfiles /local on и перезапуске. Для этого вы можете использовать Resource Monitor, который встроен в Windows 7, 8 и 10. Найдя дескриптор, вы можете определить процесс, посмотрев на столбец «Изображение» и / или «PID». Затем вы можете попытаться закрыть приложение, как обычно, или, если это невозможно, просто щелкнуть правой кнопкой мыши по дескриптору и завершить процесс прямо оттуда. Очень просто! Посмотрите на Process Explorer ( procexp.exe ).
Чтобы узнать, какой процесс использует определенный файл, выполните следующие действия: Process Explorer перечислит все процессы, которые имеют дескриптор открытого файла. Нажмите на запись, чтобы сфокусировать процесс в главном окне. При желании вы можете даже закрыть ручку вручную через нижнюю панель ( Ctrl + L ): LockHunter может разблокировать любые обработчики, которые могли заблокировать ваши файлы или папки. В отличие от аналогичных бесплатных программ, он поддерживает как 32-разрядные, так и 64-разрядные версии Windows.
EMCO UnlockIT может идентифицировать процесс, который заблокировал файл, а также разблокировать файл, чтобы вы могли удалить / отредактировать / переместить его. Программа полностью бесплатна, хотя более новая версия немного медленнее и более раздутая, чем оригинал (который имел простой, некорпорированный графический интерфейс, но загружался практически мгновенно и без раздражающего заставки). Кроме того, исходная версия использовалась для автоматического всплывающего сообщения при возникновении упомянутой ошибки, что позволяет мгновенно разблокировать файл и выполнить операцию, которую вы пытались выполнить. Здесь было мое открытие и решение. Кстати, ни один из приведенных выше ответов не решил мою проблему. Я даже пытался использовать UNLOCKER, который оказался бесполезным. У меня проблема была с Memeo Autosync Backup По-видимому, этот процесс резервного копирования оставляет достаточно «призрачного файла». Этот «призрачный файл» появлялся всякий раз, когда я запускал ALT-TAB на моем компьютере (Windows Professional XP), то есть я видел ДВА программы MS Excel, работающие, когда у меня была только ОДНА видимая, на панели задач. Я столкнулся с этим решением, когда подумал, что это может быть защита от вирусов SYMANTEC Endpoint (Anti-Virus); и отключил программу. Тем не менее, я продолжал получать сообщение об ошибке:
Впоследствии я продолжал видеть уведомление Memeo о «синхронизации» и выход из программы. Впоследствии НЕТ ОШИБКИ. Для вас это может быть ЛЮБОЙ из этих фоновых сейвов.
|