Windows как узнать кто залочил файл

Как я могу узнать, какой процесс блокирует файл или папку в Windows? Например, при попытке удалить папку Windows сообщает следующее:

Как я могу узнать, какой процесс блокирует файл или папку в Windows? Например, при попытке удалить папку Windows сообщает следующее:

Операция не может быть завершена, так как эти папка или файл открыты в другой программе. Закройте папку или файл и повторите попытку.

Такая же ошибка может возникнуть при переименовании или удаления как папки, так и файла. Но как узнать, какая программа или приложение в настоящее время использует его и не позволяет удалить файл или папку?

Имеется сразу несколько способов и программ чтобы найти процессы и программы, которые открыли файл.

1. Монитор ресурсов

Для поиска программы или процесса, открывшей файл, вы можете использовать Монитор ресурсов (Resource Monitor), который встроен в Windows 7, 8 и 10.

Откройте Монитор ресурсов, это можно сделать несколькими способами:

  • В поле для поиска введите «Монитор ресурсов» или resmon.exe:

  • Или в Диспетчере задач перейдите на вкладку «Производительность» и найдите кнопку «Открыть монитор ресурсов»:

В Мониторе ресурсов перейдите на вкладку ЦП (CPU). Используйте поле поиска в разделе «Связанные дескрипторы»

В результатах поиска в столбце «Образ» вы увидите, какая программа запустила процесс, блокирующий файл.

Здесь же вы можете кликнуть правой кнопкой мыши по любому найденному процессу и нажать «Завершить процесс», чтобы закрыть программу, блокирующую файл.

2. Process Explorer

Process Explorer — это официальная программа от Microsoft/SysInternals, которую можно скачать по ссылке: https://download.sysinternals.com/files/ProcessExplorer.zip

Описание программы на сайте Microsoft: https://docs.microsoft.com/ru-ru/sysinternals/downloads/process-explorer

Перейдите в FindHandle or DLL.

В текстовом поле «Handle or DLL substring:» введите путь до файла или папки. Будут показаны все процессы, которые имеют открытый обработчик на этот файл.

3. OpenedFilesView

OpenedFilesView это бесплатная программа не требующая установки, она покажет все открытые файлы, имеется возможность искать по имени или пути файла:

Сайт программы: https://www.nirsoft.net/utils/opened_files_view.html

4. LockHunter

LockHunter — это надёжная программа для разблокировки файлов.

Это бесплатный инструмент для удаления файлов, заблокированных неизвестным процессом. LockHunter полезен для борьбы с вредоносными программами и другими программами, которые блокируют файлы без причины. В отличие от других подобных инструментов, он удаляет файлы в корзину, поэтому вы можете восстановить их, если удалили по ошибке.

Ключевые особенности

  • Показывает процессы, блокирующие файл или папку
  • Предоставляет вам подробную информацию о процессе
  • Позволяет разблокировать, удалить, скопировать или переименовать заблокированный файл
  • Может удалить файл при следующей перезагрузке ОС
  • Позволяет убить процесс блокировки
  • Позволяет удалить процессы блокировки с жёсткого диска
  • Может выгружать DLL из процессов
  • Интегрируется в меню Проводника
  • Он удаляет файлы в корзину, поэтому вы можете восстановить их, если удалили по ошибке
  • Поддерживает как 32, так и 64 битную Windows

Сайт программы: https://lockhunter.com/

Связанные статьи:

  • Как в PowerShell узнать, какой процесс или программа блокируют файл (90.5%)
  • Диспетчер задач Windows: полное руководство (75.5%)
  • Почему svchost.exe прослушивает много портов? Как узнать, какие именно программы открыли порты (60.3%)
  • Знакомство с Process Explorer (60.3%)
  • Использование Process Explorer для устранения неполадок и диагностики (60.3%)
  • В вашем телефоне есть биометрический выключатель, вот почему вы должны его использовать (RANDOM — 0.7%)

Содержание

  1. Как узнать, какой процесс блокирует файл или папку в Windows
  2. 1. Монитор ресурсов
  3. 2. Process Explorer
  4. 3. OpenedFilesView
  5. 4. LockHunter
  6. Expert Users
  7. Похожие записи:
  8. Комментарии к записи “ Как узнать какой процесс открыл и блокирует доступ к файлу в Windows? ”
  9. Узнайте, какой процесс блокирует файл или папку в Windows
  10. 9 ответов
  11. Узнайте, какой процесс блокирует файл или папку в Windows
  12. 9 ответов 9
  13. Как определить, какой процесс в Windows 10 не дает переименовать, переместить либо удалить файл или папку

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

Как я могу узнать, какой процесс блокирует файл или папку в Windows? Например, при попытке удалить папку Windows сообщает следующее:

Операция не может быть завершена, так как эти папка или файл открыты в другой программе. Закройте папку или файл и повторите попытку.

process locking file

Такая же ошибка может возникнуть при переименовании или удаления как папки, так и файла. Но как узнать, какая программа или приложение в настоящее время использует его и не позволяет удалить файл или папку?

Имеется сразу несколько способов и программ чтобы найти процессы и программы, которые открыли файл.

1. Монитор ресурсов

Для поиска программы или процесса, открывшей файл, вы можете использовать Монитор ресурсов (Resource Monitor), который встроен в Windows 7, 8 и 10.

Откройте Монитор ресурсов, это можно сделать несколькими способами:

process locking file 2

process locking file 3

В Мониторе ресурсов перейдите на вкладку ЦП (CPU). Используйте поле поиска в разделе «Связанные дескрипторы»

process locking file 4

В результатах поиска в столбце «Образ» вы увидите, какая программа запустила процесс, блокирующий файл.

Здесь же вы можете кликнуть правой кнопкой мыши по любому найденному процессу и нажать «Завершить процесс», чтобы закрыть программу, блокирующую файл.

process locking file 5

2. Process Explorer

Process Explorer — это официальная программа от Microsoft/SysInternals, которую можно скачать по ссылке: https://download.sysinternals.com/files/ProcessExplorer.zip

Перейдите в FindHandle or DLL.

process locking file 6

В текстовом поле «Handle or DLL substring:» введите путь до файла или папки. Будут показаны все процессы, которые имеют открытый обработчик на этот файл.

3. OpenedFilesView

OpenedFilesView это бесплатная программа не требующая установки, она покажет все открытые файлы, имеется возможность искать по имени или пути файла:

opened files view

4. LockHunter

LockHunter — это надёжная программа для разблокировки файлов.

lockhunter

Это бесплатный инструмент для удаления файлов, заблокированных неизвестным процессом. LockHunter полезен для борьбы с вредоносными программами и другими программами, которые блокируют файлы без причины. В отличие от других подобных инструментов, он удаляет файлы в корзину, поэтому вы можете восстановить их, если удалили по ошибке.

lockhunter 2

Источник

Expert Users

Для того, чтобы узнать какой процесс открыл и блокирует доступ к файлу в Windows нам поможет программа Process Explorer. Эта прога отображает все работающие процессы и позволяет просмотреть загруженные DLL файлы и отрытые хэндлы для любого процесса.

Итак, для того чтобы узнать какой процесс блокирует файл, вам нужно:
1) скачать программу Process Explorer на сайте microsoft (размер около 1.5 Мб)

3) ввести имя заблокированного файла, который нужно найти. Будет показан список всех процессов, которые используют этот файл.

Если вам известны другие методы как узнать какой процесс блокирует доступ к файлу, пишите в комментариях.

Похожие записи:

Комментарии к записи “ Как узнать какой процесс открыл и блокирует доступ к файлу в Windows? ”

Статья оказалось бесполезной. Мне нужно было выяснить какая программа блокимрует базу данных Microsoft SQLServer Compact (это файл с раширением sdf). Ничего не находится таким способом.

Анатолий, попробуйте программу unlocker.

Microsoft SQLServer – это база данных, которая запускается как Windows Service. Вам необходимо остановить процесс MS SQL Server (как-то так должен называться) и только потом сможете воздействовать на файл БД. Есть еще способы, но про них лучше почитать на MSDN.

Я же написал Compact и про файл sdf!
Никакой это не сервис.

Бесполезняк.
Залочены скомпилированные явой классы. Воткнул имя класса – не показывает.

Источник

Узнайте, какой процесс блокирует файл или папку в Windows

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

Например, при попытке удалить папку Windows сообщает об этом:

Действие не может быть выполнено, потому что папка открыта в другой программе

Случается то же самое с файлом, но как узнать, какая программа или приложение в настоящее время его использует и не позволяет мне удалить файл или папку?

9 ответов

Если это не очевидно, когда вы нашли дескриптор, вы можете определить процесс, посмотрев на столбец Image и /или PID.

E2TJv

N.B. WhoLockMe, похоже, не работает с Win 10 (по крайней мере, мне не удалось зарегистрировать его ни в одной из 32- или 64-разрядных версий regsvr32.exe).

Вы когда-нибудь задавались вопросом, какая программа имеет определенный файл или каталог? Теперь вы можете это выяснить.

Чтобы узнать, какой процесс использует определенный файл, выполните следующие действия:

r9diy>

JU6cs

Это бесплатный инструмент для удаления файлов, заблокированных тем, что вы не знаете. LockHunter полезен для борьбы с вредоносными программами и другими программами, которые блокируют файлы без причины. В отличие от других подобных инструментов, он удаляет файлы в корзину, чтобы вы могли их восстановить, если они были удалены по ошибке.

EMCO UnlockIT может идентифицировать процесс, который заблокировал файл, а также разблокировать файл, чтобы вы может удалить /отредактировать /переместить его. Программа полностью бесплатна, хотя более новая версия немного медленнее и более раздутой, чем оригинал (у которого был простой, неподтвержденный графический интерфейс, но загружался практически мгновенно и без раздражающего заставки). Кроме того, оригинальная версия используется для автоматического всплытия всякий раз, когда вы вызываете ошибку, которая позволяет вам мгновенно разблокировать файл и выполнить операцию, которую вы пытаетесь выполнить.

Вот мое открытие & Решение.

Кстати, ни один из вышеперечисленных ответов не решил мою проблему.

Я даже пытался использовать UNLOCKER, который оказался бесполезным.

Моя проблема была в том, что Memeo Autosync Backup

По-видимому, этот процесс резервного копирования оставляет достаточно «файла-призрака». Этот «призрак, как файл», будет отображаться всякий раз, когда я буду ALT-TAB на моем компьютере (Windows Professional XP), то есть я увижу, что в моей TASK BAR запускаются две программы MS Excel, когда я только ОДИН был видимым.

Я столкнулся с этим решением, когда подумал, что это могла быть защита SYMANTEC Endpoint (Anti-Virus); и отключил программу. Однако я продолжал получать сообщение об ошибке:

невозможно удалить (файл LARGE.xls): он используется другим человеком или программой. Закройте все программы, которые могут использовать этот файл, и повторите попытку.

Впоследствии я продолжал видеть уведомление Memeo о «синхронизации» и ВЫКЛЮЧИТЬ программу.

Для вас это может быть ЛЮБОЙ из этих фоновых сейвов.

Если вы не знаете программу, которую он использует, вы можете перейти в «Мой компьютер»; щелкните правой кнопкой мыши; выберите «Управление». В разделе «Системные инструменты»> Общие папки> Откройте файлы, вы сможете увидеть пользователя, который заблокировал файл. Здесь вы можете закрыть файл, а затем выполнить задачу переименования или удаления файла. Надеюсь, что это поможет

Дополнительная возможность, просто чтобы сэкономить людям время, которое я потратил:

Измените право собственности на Администраторов, и вам хорошо идти.

Источник

Узнайте, какой процесс блокирует файл или папку в Windows

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

Например, при попытке удалить папку Windows сообщает об этом:

Действие не может быть завершено, потому что папка открыта в другой программе

Происходит то же самое с файлом, но как мне узнать, какая программа или приложение использует его в настоящее время и не позволяет мне удалить файл или папку?

9 ответов 9

Для Windows 7, 8 и 10 вы можете использовать встроенный Resource Monitor для этого.

В случае, если это не очевидно, когда вы нашли дескриптор, вы можете определить процесс, посмотрев на столбец Image и / или PID.

E2TJv

Взгляните на Process Explorer ( procexp.exe ).

Задумывались ли вы, какая программа имеет определенный файл или каталог открыт? Теперь вы можете узнать.

Чтобы узнать, какой процесс использует определенный файл, выполните следующие действия:

r9diy

Введите имя файла и нажмите Поиск.

2L46q

Process Explorer перечислит все процессы, которые имеют дескриптор открытого файла. Нажмите на запись, чтобы сфокусировать процесс в главном окне.

u0fb0

При желании вы можете даже закрыть ручку вручную через нижнюю панель ( Ctrl + L ):

pyhvL

В команде openfiles должна быть включена поддержка локальных файлов, для этого нужно запустить openfiles /local on и перезапустить.

LockHunter может разблокировать любые обработчики, которые могли заблокировать ваши файлы или папки. В отличие от аналогичных бесплатных программ, он поддерживает как 32-разрядные, так и 64-разрядные версии Windows.

JU6cs

Это бесплатный инструмент для удаления файлов, заблокированных тем, что вы не знаете. LockHunter полезен для борьбы с вредоносными программами и другими программами, которые блокируют файлы без причины. В отличие от других подобных инструментов, он удаляет файлы в корзину, поэтому вы можете восстановить их, если удалили по ошибке.

EMCO UnlockIT может идентифицировать процесс, который заблокировал файл, а также разблокировать файл, чтобы вы могли удалить / отредактировать / переместить его. Программа полностью бесплатна, хотя более новая версия немного медленнее и более раздутая, чем оригинал (который имел простой, некорпорированный графический интерфейс, но загружался практически мгновенно и без раздражающего заставки). Кроме того, исходная версия использовалась для автоматического всплывающего сообщения при возникновении упомянутой ошибки, что позволяет мгновенно разблокировать файл и выполнить операцию, которую вы пытались выполнить.

Здесь было мое открытие и решение.

Кстати, ни один из вышеперечисленных ответов не решил мою проблему.

Я даже пытался использовать UNLOCKER, который оказался бесполезным.

У меня проблема была с Memeo Autosync Backup

По-видимому, этот процесс резервного копирования оставляет достаточно «призрачного файла». Этот «призрачный файл» будет появляться всякий раз, когда я буду ALT-TAB на моем компьютере (Windows Professional XP), то есть я вижу, что ДВА ПРОГРАММЫ MS Excel работают, когда у меня только ОДНА видимая, на моей панели задач.

Я столкнулся с этим решением, когда подумал, что это может быть защита от вирусов SYMANTEC Endpoint (Anti-Virus); и отключил программу. Тем не менее, я продолжал получать сообщение об ошибке:

невозможно удалить (файл LARGE.xls): он используется другим человеком или программой. Закройте все программы, которые могут использовать этот файл, и повторите попытку.

Впоследствии я продолжал видеть уведомление Memeo о «синхронизации» и выход из программы.

Впоследствии НЕТ ОШИБКИ.

Для вас это может быть ЛЮБОЙ из этих фоновых сейвов.

Источник

Как определить, какой процесс в Windows 10 не дает переименовать, переместить либо удалить файл или папку

process

Н аверное, каждому из пользователей Windows хотя бы раз приходилось иметь дело с так называемыми неудаляемыми файлами и папками. Как правило, причиной невозможности удалить, переместить или хотя бы переименовать такой объект является использование его каким-то процессом, причём необязательно чтобы этот процесс был системным. Это может быть антивирус, архиватор или какой-нибудь редактор.

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

4614395 1

Так вот, определить её очень просто. Во всех популярных версиях Windows (начиная с 7) есть такая встроенная утилита как «Монитор ресурсов», предназначающаяся для контроля использования программных и аппаратных ресурсов. В её поле зрения попадают все процессы, в том числе и зависшие. Она то как раз и подскажет, что именно держит файл или папку.

4614395 2

4614395 3

Вот так всё просто. Кстати, если удерживающий процесс не является критическим, его можно завершить прямо из окна монитора ресурсов.

4614395 4

После этого проблемный файл, папка или другой объект легко смогут быть удалены обычным способом.

Источник

Здесь было мое открытие и решение.

Кстати, ни один из вышеперечисленных ответов не решил мою проблему.

Я даже пытался использовать UNLOCKER, который оказался бесполезным.

У меня проблема была с Memeo Autosync Backup

По-видимому, этот процесс резервного копирования оставляет достаточно «призрачного файла». Этот «призрачный файл» будет появляться всякий раз, когда я буду ALT-TAB на моем компьютере (Windows Professional XP), то есть я вижу, что ДВА ПРОГРАММЫ MS Excel работают, когда у меня только ОДНА видимая, на моей панели задач.

Я столкнулся с этим решением, когда подумал, что это может быть защита от вирусов SYMANTEC Endpoint (Anti-Virus); и отключил программу. Тем не менее, я продолжал получать сообщение об ошибке:

невозможно удалить (файл LARGE.xls): он используется другим человеком или программой. Закройте все программы, которые могут использовать этот файл, и повторите попытку.

Впоследствии я продолжал видеть уведомление Memeo о «синхронизации» и выход из программы.

Впоследствии НЕТ ОШИБКИ.

Для вас это может быть ЛЮБОЙ из этих фоновых сейвов.

Наверное, каждому из пользователей Windows хотя бы раз приходилось иметь дело с так называемыми неудаляемыми файлами и папками. Как правило, причиной невозможности удалить, переместить или хотя бы переименовать такой объект является использование его каким-то процессом, причём необязательно чтобы этот процесс был системным. Это может быть антивирус, архиватор или какой-нибудь редактор.

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

Ошибка

Так вот, определить её очень просто. Во всех популярных версиях Windows (начиная с 7) есть такая встроенная утилита как «Монитор ресурсов», предназначающаяся для контроля использования программных и аппаратных ресурсов. В её поле зрения попадают все процессы, в том числе и зависшие. Она то как раз и подскажет, что именно держит файл или папку.

Нажмите сочетание клавиш Win + R и выполните в открывшемся окошке команду resmon.

Программа выполнить

Откроется окно монитора ресурсов. Переключитесь в нём на вкладку «ЦП» и введите в поле «Поиск дескрипторов» название объекта, при удалении, перемещении или переименовании которого возникла ошибка. Результаты отобразятся тут же, чуть ниже. В нашем примере удалению папки «Всякая всячина» препятствовал архиватор WinRAR, но в самом окне с описанием ошибки об этом ничего не говорилось.

Монитор ресурсов

Вот так всё просто. Кстати, если удерживающий процесс не является критическим, его можно завершить прямо из окна монитора ресурсов.

Завершение процесса

После этого проблемный файл, папка или другой объект легко смогут быть удалены обычным способом.

Загрузка…

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

Иногда, при попытке удалить, переместить или переименовать файл, могут возникать различные окна с системными предупреждениями следующего вида:

  • Доступ к файлу запрещен - Как узнать, какие процессы Windows используют файл?«Не удается удалить файл: отказано в доступе» / «Cannot delete file: Access is denied»
  • «Обнаружена проблема общего доступа» / «There has been a sharing violation»
  • «Исходный файл возможно используется» / «The source or destination file may be in use»
  • «Файл используется другой программой или пользователем» / «The file is in use by another program or user».
  • «Убедитесь, что диск не переполнен и не защищен от записи и что файл не используется в настоящее время» / «Make sure the disk is not full or write-protected and that the file is not currently in use»

Одним из лучших способов справиться с заблокированными файлами и каталогами — это воспользоваться бесплатной программой Process Explorer от Microsoft. Программа уже была описана в обзоре Лучшие бесплатные диспетчеры процессов, и вот как ее можно использовать для того, чтобы узнать какой процесс или какая DLL блокирует доступ к файлу. Вам потребуются права администратора.

Примечание: Как альтернативу, вы так же можете использовать монитор ресурсов Windows для поиска программ, блокирующих доступ к файлу.

Как узнать, какие программы использует файл в Windows 7?

В Windows 7 и выше, системное сообщение может содержать название программы, блокирующую доступ к файлу. В Windows XP, обычно, такой информации нет. В любом случае, есть простой способ, как можно найти программу:

process explorer - Как узнать, какие процессы Windows используют файл?

  1. Откройте Process Explorer от имени администратора
  2. На панели инструментов найдите значок в виде прицела (иконка выделена на рисунке выше)
  3. Перетащите иконку на заблокированный файл или каталог
  4. Программы, которые используют данный файл, будут подсвечены в общем списке процессов в главном окне Process Explorer

Как узнать, какие программы и DLL держат открытые маркеры (дескрипторы) на файл в Windows 7?

  1. Откройте Process Explorer от имени администратора
  2. Нажмите комбинацию клавиш «Ctrl + F». Или выберите в меню «Поиск» пункт «Find a Handle or DLL»
  3. Откроется диалоговое окно поиска
  4. Введите имя заблокированного файла или часть его названия. Как правило, достаточно части имени
  5. Нажмите кнопку «Поиск»
  6. Откроется список со всеми программами и dll, которые используют данный файл. Вернее их открытые маркеры (дескрипторы) на файл
  7. Вы можете удалить все маркеры (дескрипторы) простым нажатие кнопки «Delete», чтобы разблокировать доступ к файлу. Тем не менее, обращаем ваше внимание на то, что при удалении дескрипторов, могут возникнуть проблемы. Например, если это сделать во время сохранения файла, то информация в файле может быть повреждена. Поэтому, если вы сомневаетесь, то можете просто перезагрузить компьютер. Часто, этого вполне достаточно, чтобы разблокировать доступ к файлу.

Process Explorer можно скачать здесь.

Примечание: Как альтернативу, вы так же можете программы из обзора Лучшие бесплатные утилиты для удаления блокированных файлов. Несмотря на их название, они так же позволяют копировать и перемещать файлы. А так же позволяют обойти ряд таких ограничений, как блокировка доступа к файлу при старте системы.

Теперь, вы знаете, как узнать какие процессы Windows используют файл. А так же знаете, как можно разблокировать доступ к файлам.

Компьютеры и ПО. Файл занят другой программой: что делать

Не секрет, что в системах Windows программы могут использовать некоторые файлы одновременно. Как правило, это касается системных компонентов, и при открытии какого-то приложения, которому сопоставлен такой файл, или при попытке удаления Windows сообщает пользователю, что системный или пользовательский файл занят другой программой. Что делать? Игра это, торрент-приложение или даже обычный офисный редактор, — неважно. Суть проблемы от этого не меняется. Но давайте посмотрим, что можно предпринять в такой ситуации.

Файл занят другой программой: что это означает

Собственно, суть вопроса состоит в том, что определенный компонент в данный момент использует не одно, а два и более приложений. В частности, это касается не только запущенных пользовательских программ, но и системных служб, работающих в фоновом режиме.

файл занят другой программой что делать

Как правило, проблема того, что какой-то файл занят другой программой при попытке доступа к нему большей частью касается драйверов устройств, однако бывают и исключения. В самом простом случае можно привести пример того, что пользователь одновременно открывает документ, скажем, сначала в Word, а затем в WordPad и в одном из этих приложений пытается сохранить изменения. Естественно, система и начинает, что называется, плеваться. То же самое касается, например, случаев использования веб-камеры, когда приоритетом назначена программа Skype, а пользователь пытается запустить другое приложение, которое по идее тоже должно ее задействовать. И это не единичные случаи.

Достаточно часто проявляются и другие ситуации, когда файл занят другой программой. Что делать? Торрент-файл невозможно удалить! Почему? Да просто потому, что он находится в стадии активной загрузки в самом приложении (BitTorrent, uTorrent и др.). Выйти из такого положения можно совершенно просто, завершив загрузку или раздачу в программе или просто удалив загрузку из списка. Но это самое простое, что может быть. Обычно ситуация гораздо сложнее.

Файл занят другой программой: что делать в самом простом случае

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

файл занят другой программой

Что именно? Правильно! Они просто перезагружают компьютер. Кстати сказать, такой примитивный способ помогает абсолютно во всех случаях, правда, это касается только завершения активных процессов, связанных с самой системой. Если же работа производилась с документами, в которых были сделаны изменения, ни о каком сохранении и говорить не приходится. И многие этого просто не учитывают, а потом начинают кусать локти.

Принудительное завершение блокирующего процесса

Оптимальным вариантом по выходу из сложившейся ситуации станет проверка блокирующего процесса. Как узнать, какой процесс использует файл? Да очень просто! Для этого следует использовать всем известный «Диспетчер задач», который можно вызвать комбинацией Ctrl + Del + Alt (Ctrl + Esc + Alt) или командой taskmgr из меню «Выполнить» (Win + R). Если пользователь хотя бы приблизительно понимает, какое именно приложение может обращаться к файлу в данный момент, нужно просто найти его в списке активных процессов или служб и применить принудительное завершение процесса соответствующей кнопкой или через контекстное меню правого клика.

как узнать какой процесс использует файл

Но такой способ годится только для тех случаев, когда можно предположить, какой именно процесс может обращаться к указанному файлу. Но если нет даже приблизительного представления, лучше воспользоваться утилитой Process Explorer, которую можно загрузить с официального ресурса Microsoft.

Проблемы с удалением файлов

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

файл занят другой программой что делать игра

Чаще всего это касается системных компонентов, жизненно необходимых для работы Windows или связанных с этими процессами частично (хотя бывают и другие ситуации). При этом не помогают никакие администраторские права, как ни старайся (система сама блокирует выполнение действий, которые могут нанести ей вред). Однако и в такой ситуации выход есть. Существует как минимум два варианта.

Использование утилиты Unlocker

Итак, система сообщает, что файл занят другой программой. Что делать в этом случае? Можно использовать уникальную утилиту Unlocker. В некоторых сборках Windows она имеется уже изначально. Если ее нет, приложение придется загрузить и установить.

файл занят другой программой что делать торрент

После этого программа интегрирует собственные командные строки в меню правого клика. Теперь нужно взывать такое меню и использовать команду Unlocker, в окне приложения выбрать процесс, а затем снизу нажать кнопку «Убить процесс». По завершении с файлом можно будет производить любые операции.

Изменение прав доступа

Теперь посмотрим еще на одну ситуацию с попытками удаления некоторых данных. В этом случае система тоже сообщает, что файл занят другой программой. Что делать в такой ситуации? Для удаления так называемых неудаляемых файлов и папок, нужно просто предоставить себе нужные права.

файл занят другой программой что делать spintires

Сделать это можно в контекстном меню правого клика на объекте в разделе свойств. Здесь понадобится перейти на вкладку безопасности, нажать кнопку «Дополнительно» и изменить текущего владельца, после чего вернуться в предыдущее окно и использовать кнопку «Изменить», а затем в меню установить галочки напротив всех строк, имеющихся в списке.

файл занят другой программой что делать

По завершении всех этих операций файл можно будет удалить без проблем.

Другие ситуации и решения

Бывает и так, что и игры не хотят работать. Опять же система сообщает, что какой-то файл занят другой программой. Что делать? SpinTires (симулятор гонок на грузовиках) ко всему прочему еще и выдает ошибку, что, мол, файлы отличаются от оригинала.

В этом случае это может означать только то, что игра загружена из ненадежного источника, а поэтому и запуск, и доступ к онлайн-прохождению оказываются заблокированными. Выходом может стать повторная загрузка официальной версии или же установка специальных «фиксов» для устранения проблем с работой.

Заключение

Как видим, ситуация некритична. Если по какой-то причине система сообщает, что файл занят другой программой, что делать и какое принять решение по исправлению проблемы, можно понять из всего предложенного. Собственно, любой способ на выбор пользователя может решить такую ситуацию. Что предпочесть? Многие советуют использовать именно Unlocker, поскольку это самое простое решение, ведь постоянное завершение какого-то блокирующего процесса может стать достаточно проблематичным. В некоторых случаях можно использовать оптимизаторы с тонкой настройкой автозагрузки, но, если исключить из нее некоторые важные системные процессы, гарантии, что Windows будет работать корректно или загрузится при повторном старте, нет. И это даже при условии того, что большинство из таких приложений, как считается, вреда системе не наносят. В общем, в любом случае осторожность не помешает, так что будьте бдительны.

Как вы узнаете, какой процесс удерживает файл открытым в Windows?

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

Любые предложения о том, как найти виновника?

Я имел успех с Sysinternals Process Explorer . С помощью этого вы можете искать, чтобы найти, какой процесс (ы) имеют открытый файл, и вы можете использовать его, чтобы закрыть дескриптор (ы), если хотите. Конечно, безопаснее закрыть весь процесс. Проявляйте осторожность и рассудительность.

Чтобы найти конкретный файл, используйте пункт меню « Find->Find Handle or DLL. Введите» в части пути к файлу. Список процессов появится ниже.

Если вы предпочитаете командную строку, в комплект Sysinternals входит инструмент Handle командной строки , в котором перечислены открытые дескрипторы. Несколько примеров о том, как его использовать:

  • c:Program FilesSysinternalsSuite>handle.exe |findstr /i e: — найти все файлы, открытые с диска E:
  • c:Program FilesSysinternalsSuite>handle.exe |findstr /i file-or-path-in-question

Для этого вы можете использовать Resource Monitor, который встроен в Windows 7, 8 и 10.

  1. Откройте Resource Monitor , который можно найти
    • Выполнив поиск Resource Monitor или resmon.exe в меню «Пуск», или
    • Как кнопка на вкладке « Производительность » в вашем диспетчере задач
  2. Перейти на вкладку CPU
  3. Используйте поле поиска в разделе « Связанные дескрипторы »
    • Смотрите синюю стрелку на снимке экрана ниже

Найдя дескриптор, вы можете определить процесс, посмотрев на столбец «Изображение» и / или «PID».

Затем вы можете попытаться закрыть приложение, как обычно, или, если это невозможно, просто щелкнуть правой кнопкой мыши по дескриптору и завершить процесс прямо оттуда. Очень просто!

Скриншот монитора ресурсов

Просто будьте очень осторожны с закрывающимися ручками; это даже более опасно, чем вы думаете, из-за повторного использования дескриптора — если вы закроете дескриптор файла, и программа откроет что-то еще, этот оригинальный дескриптор файла, который вы закрыли, может быть повторно использован для этого «чего-то еще». А теперь угадайте, что произойдет, если программа продолжит работу, думая, что она работает с файлом (чей дескриптор вы закрыли), когда фактически этот дескриптор файла теперь указывает на что-то другое.

см. сообщение Раймонда Чена на эту тему

Предположим, у службы поиска есть файл, открытый для индексации, но он временно застрял, и вы хотите удалить файл, поэтому вы (неразумно) принудительно закрываете дескриптор. Служба индекса поиска открывает свой файл журнала, чтобы записать некоторую информацию, и дескриптор удаленного файла повторно используется в качестве дескриптора файла журнала. Завершенная операция, наконец, завершается, и служба индекса поиска, наконец, подходит к закрытию того дескриптора, который у нее был открыт, но в конечном итоге невольно закрывает дескриптор файла журнала.

Служба индекса поиска открывает другой файл, скажем, файл конфигурации для записи, чтобы обновить некоторое постоянное состояние. Дескриптор файла журнала перерабатывается как дескриптор файла конфигурации. Служба индекса поиска хочет записать некоторую информацию, поэтому она записывает в свой файл журнала. К сожалению, дескриптор файла журнала был закрыт, и этот дескриптор повторно использовался для его файла конфигурации. Зарегистрированная информация попадает в файл конфигурации, повреждая его.

Между тем, другой дескриптор, который вы принудительно закрыли, был повторно использован как дескриптор мьютекса, который используется для предотвращения повреждения данных. Когда оригинальный дескриптор файла закрыт, дескриптор мьютекса закрывается и защита от повреждения данных теряется. Чем дольше служба работает, тем более поврежденными становятся ее индексы. В конце концов, кто-то замечает, что индекс возвращает неверные результаты. И когда вы пытаетесь перезапустить службу, она терпит неудачу, потому что ее файлы конфигурации были повреждены.

Вы сообщаете о проблеме компании, которая предоставляет службу индекса поиска, и они определяют, что индекс был поврежден, файл журнала загадочным образом прекратил запись, а файл конфигурации был перезаписан мусором. Некоторому плохому специалисту поручена безнадежная задача выяснить, почему служба портит свои индексы и файлы конфигурации, не зная, что источником повреждения является то, что вы принудительно закрыли дескриптор.

Файл занят другим процессом, заблокирован другим процессом или открыт в другой программе — простое решение

Как разблокировать файл в PowerToys LocksmithРаспространенная проблема при попытке удалить, переименовать, переместить или изменить файл или папку — сообщение о том, что процесс не может получить доступ к файлу, так как этот файл занят другим процессом, о том, что папка или файл открыты в другой программе и аналогичные.

В этой простой инструкции новый простой способ узнать, какой именно процесс мешает действиям с файлом или папкой в Windows 11 и Windows 10, закрыть такую программу и выполнить требуемые изменений. На близкую тему может быть полезным: Как удалить файл, который не удаляется в Windows.

File Locksmith — новая функция Microsoft PowerToys для разблокировки файлов

Заблокированный другим процессом файл или папка — типичная ситуация, при этом Windows не всегда сообщает пользователю, о каком именно процессе идёт речь.

Процесс не может получить доступ к файлу, сообщения об ошибке

На сайте уже несколько раз обновлялся обзор полезной и бесплатной утилиты Microsoft PowerToys, содержащей набор инструментов для работы в системах Windows 10 и Windows 11. В начале ноября в ней появилась ещё одна возможность — File Locksmith, которая и поможет в рассматриваемой ситуации.

File Locksmith позволяет легко определить, какие процессы используют файл или папку (а точнее — её содержимое) и быстро закрыть эти процессы. Далее подробно о том, как именно работает функция:

  1. Установите Microsoft PowerToys, если ещё не установили. Проще всего это сделать из магазина приложений Microsoft Store используя поиск в магазине или ссылку https://aka.ms/getPowertoys, также есть другие способы загрузки: https://learn.microsoft.com/ru-ru/windows/powertoys/install
  2. После первого запуска приложения может потребоваться перезапуск PowerToys от имени администратора в главном окне приложения (в моем тесте функция File Locksmith не появилась в меню до выполнения перезапуска на одном из устройств). Перезапуск Microsoft Powertoys от имени администратора
  3. В параметрах Microsoft PowerToys убедитесь, что функция File Locksmith включена. Функция File Locksmith в Microsoft Powertoys
  4. Нажмите правой кнопкой мыши по файлу, который занят другим процессом и выберите пункт меню «Какие процессы используют этот файл?». В Windows 11 потребуется предварительно открыть классическое контекстное меню, нажав «Показать дополнительные параметры». Посмотреть какие процессы используют этот файл
  5. Откроется окно со списком процессов, использующих этот файл. Если процесс не отображается, выполните перезапуск окна с правами администратора, нажав по значку справа вверху. Процессы использующие файл
  6. Раскрыв свойства процесса, вы можете узнать его идентификатор (например, для завершения вручную), а также от имени какого пользователя он запущен. Информация о процессе в File Locksmith
  7. Действие по проверке использующих элемент процессов можно применять и к папке, в таком случае будет отображаться список всех процессов, использующих её содержимое, а раскрыв сведения можно получить информацию о том, какие именно файлы использует этот процесс. Какие процессы используют файлы в папке
  8. И, самое главное, прямо в окне File Locksmith можно завершить процесс. Однако будьте осторожны при завершении системных процессов Windows.

Надеюсь, новый инструмент будет полезен. Конечно, есть и другие возможности, например, многие используют Unlocker, но вариант с File Locksmith куда более безопасен для пользователя, на мой взгляд.

Иногда при попытке удалить, переименовать или переместить какой-то файл в Windows вы можете получить сообщение, что файл занят/заблокирован/используется) другим процессом. Чаще всего имя программы, которая держит файл открытым указывается прямо в окне сообщения File Explorer. Чтобы снять блокировку файла достаточно просто закрыть эту программу. Но бывает ситуации, когда какой-то файл и библиотека используется неизвестным или системным процессом. В этом случае снять блокировку с файла немного сложнее.

Многие приложения открывают файлы в монопольном (эксклюзивном) режиме. При этом файл блокируется файловой системой от операций ввода вывода других приложений. Если вы закрываете приложение, блокировка с файла снимается.

Сообщение о блокировке файла может выглядеть по-разному. Например в следующем примере указан тип файла и с каким приложением он ассоциирован:

File/Folder in Use. The action can’t be completed because the file is open in another program. Close the folder or file and try again.
Файл уже используется. Операция не может быть завершена, так как файл или папка открыта в другой программе. Закройте файл и повторите попытку.

Файл уже используется. Операция не может быть завершена, так как файл или папка открыта в другой программе. Закройте файл и повторите попытку.

В этом случае вы можете легко понять какое приложение заблокировало файл и закрыть его.

Однако иногда можно увидеть более интересное сообщение, о том, что файл заблокирован неизвестным или системным процессом Windows. Это может быть, как процесс самой ОС Windows, так и другие процессе, работающий с правами System, например, антивирус, агент резервного копирования, база данных mssql и т.д.):

The action can’t be completed because the file is open in SYSTEM.
Файл уже используется. Действие не может быть выполнено, так как этот файл открыт в System.

Файл уже используется. Действие не может быть выполнено, так как этот файл открыт в System

Попробуем разобраться, как понять какой программой, службой или системным процессом Windows занят файл, как разблокировать файл и можно ли разблокировать файл не закрывая родительский процесс.

Самый простой вариант разблокировать файл – завершить процесс, которые его заблокировал. Но это не всегда возможно, особенно на серверах.

Чаще всего для поиска процесса, который заблокировал файл рекомендуют использовать утилиту Unlocker. Лично я
Unlocker
не использую, т.к. она не позволяет получить подробную информацию о процессе или цепочке процессов, которые заблокировали файл. Также нельзя освободить конкретный файл, занятый процессом – приходится завершать приложение целиком.

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

Когда процесс в Windows открывает файл, этому потоку ввода/вывода назначается файловый дескриптор (handler). Процесс и его дочерние процессы получают доступ к файлу по этому дескриптору. Через Window API вы можете послать сигнал файловой системе на освобождение данного дескриптора и снятие блокировки с файла.

Принудительное закрытие файловых дескрипторов может вызвать нестабильную работу приложения или компьютера. Если вы не знаете, к чему приведет закрытие дескриптора файла для конкретного приложения, то не пытайтесь выполнить это на продуктивном сервере без предварительного теста.

Как разблокировать файл с помощью Process Explorer?

ProcessExplorer это бесплатная утилита из набора системных утилит Sysinternals, которую можно скачать на сайте Microsoft (https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer). Попробуем с помощью Process Explorer найти, какой процесс заблокировал определенный файл и освободить этот файл, сбросив файловый дескриптор процесса.

  1. ProcessExplorer не требует установки, просто скачайте распакуйте и запустите с правами администратора
    procexp.exe
    ;
  2. Выберите меню Find -> Find Handle or DLL (или нажмите
    Ctrl-F
    ); proc explorer - поиск открытых файлов
  3. Укажите имя файла, который нужно разблокировать и нажмите Search;
  4. Выберите нужный файл. Процесс, который открыл файлы будет выделен в дереве процессов. Можно завершить этот процесс, щелкнув по нему правой кнопкой и выбрав Kill Process Tree. Но можно попробовать закрыть дескриптор файла, не завершая процесс целиком. Дескриптор файла, который вы искали, автоматически выделяется в нижней панели Process Explorer. Щелкните по дескриптору правой кнопкой и выберите Close handle. Подтвердите закрытие файла. process explorer найти и завершить дескриптор процесса

    Если у вас в Process Explorer не отображается нижняя панель со списком открытых дескрипторов процесса, включите пункт меню View -> Lower Pane View -> Handles

Итак, вы закрыли дескриптор файла, не завершая родительский процесс. Теперь вы можете спокойно удалить или переименовать файл.

Сброс дескриптора файла с помощью утилиты Handle

Handle – это еще одна утилита командной строки из комплекта инструментов Sysinternals (доступна для скачивания на сайте Microsoft (https://docs.microsoft.com/en-us/sysinternals/downloads/handle. Она позволяет найти процесс, который заблокировал ваш файл и снять блокировку, освободив дескриптор.

  1. Скачайте и распакуйте архив с утилитой Handle;
  2. Запустите командную строку с правами администратора и выполните команду:
    handle64.exe > listproc.txt
    утилита Handle.exe  Данная команда сохранит список открытых дескрипторов в файл. Можно вывести дескрипторы для каталога, в котором находится файл, который вы хотите изменить:
    Handle64.exe -a C:SomePath
    или конкретного процесса:
    handle64.exe -p winword.exe
  3. Откройте файл listproc.txt в любом текстовом редакторе и найдите строку, в которой указано имя заблокированного файла. Скопируйте ID дескриптора файла (значение в hex формате). Затем поднимитесь немного выше к разделу, в котором указан процесс, являющийся владельцем данного дескриптора и запишите его ID. Для процесса запущенного от имени системы скорее всего будет PID 4. список открытых дескрипторов файлов в windows

    Для некоторых системных процессов handle.exe вернет следующий текст:
    wininit.exe pid: 732 <unable to open process>
    . Это означает, что вы не может получить информацию об этих системных процессах (даже с правами администратора). Для получения дескрипторов файлов, открытых такими процессами, запустите командную строку с правами System и попробуйте получить список дескрипторов еще раз.

  4. Теперь вернитесь в командную строку и сбросьте дескриптор файла по полученным HandleID и ProcessID. Формат команды следующий:
    handl64e.exe -c HandleID -p ProcessID
    Например:
    handl64e.exe -c 18C -p 18800
    handl64e - закрыть дескриптор открытого файла
  5. Утилита запросит подтвердить закрытие файла для указанного процесса. Подтвердите, нажав y -> enter

Если система отреагирует на закрытие файла корректно, вы разблокируете ваш файл без необходимости завершать процесс или перезагружать сервер/компьютер.

Понравилась статья? Поделить с друзьями:
  • Windows как узнать какое приложение занимает порт
  • Windows как узнать какая программа использует диск
  • Windows как узнать mac адрес роутера
  • Windows как узнать ip компьютера по имени
  • Windows как удалить папку с большим количеством файлов