Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

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


Как узнать, какой процесс блокирует файл или папку в 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/

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

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

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

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

2) запустить Process Explorer, выбрать меню Find -> Find Handle or DLL

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

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

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

Ярлыки: Windows, процесс, процесс блокирует файл Автор: Sergey Lopatin

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

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

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

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

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

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

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

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

Windows: Поиск процесса блокирующих файл

Автор: spions on 16 сентября 2013

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

Краткое описание доступно на сайте http://technet.microsoft.com, аналогичную информацию можно получить запустив программу без параметров. В windows 7 и старше, для получения информации необходимы привилегии локального администратора.

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

запускаем утилиту с параметром «-u»:

handle -u Velikij.master.2013.D.DVDRip.1400MB.avi

В выводе виден PID  и название процесса, который произвел блокировку.

Вы можете оставить комментарий ниже.

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

Если вы предпочитаете графический интерфейс, то смотрите «Как узнать, какой процесс блокирует файл или папку в Windows».

В данной статье будет показано, как с помощью PowerShell найти процесс, который блокирует файл или папку.

Команда OPENFILES позволяет администратору вывести список открытых файлов и папок, которые были открыты в системе.

Использование


 OPENFILES /<параметр> []

Список параметров:


 /Disconnect Отключение одного и более открытых файлов.
 
 /Query Отображение открытых файлов, локально и с сетевого
 ресурса.
 
 /Local Включает/отключает отображение локально открытых файлов.
 
 /? Вывод справки.

Для использования программы OPENFILES должен быть включён флаг «построение списка объектов».

Для его включения выполните команду:


 openfiles /local on

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

После этих подготовительных действий, мы наконец можем узнать в PowerShell, какой процесс заблокировал файл (папку) от удаления и переименования. Следующий команды можно выполнить построчно или использовать в скрипте. Замените «C:\Windows\SoftwareDistribution» на папку или файл, которые вас интересуют:


 $FileOrFolderPath = "C:\Windows\SoftwareDistribution"
 $LockingProcess = CMD /C "openfiles /query /fo table | find /I ""$FileOrFolderPath"""
 Write-Host $LockingProcess

Данные о процессах открывших файл будут содержать следующие поля:

  • ID
  • Имя процесса
  • Открыть файл (<Путь>\<исполнимый файл>)

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


 $FileOrFolderPath = "C:\Windows\SoftwareDistribution"
 IF((Test-Path -Path $FileOrFolderPath) -eq $false) {
 Write-Warning "Файл или директория не существуют." 
 }
 Else {
 $LockingProcess = CMD /C "openfiles /query /fo table | find /I ""$FileOrFolderPath"""
 Write-Host $LockingProcess
 }
 

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

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

Я регулярно пользуюсь утилитами Sysinternals и хочу поделиться одним из cпособов как при помощи Process Explorer выяснить какой процесс заблокировал доступ к файлу или папке.

Использовать утилиты очень удобно – они бесплатны, не требуют инсталляции и могут быть запущены без предварительного скачивания из интернета (см http://live.sysinternals.com/). Последние 2 пункта делают их очень удобными при анализе и устранении проблем на серверах.

Я недавно завел Ютуб-канал, где выкладываю видео по теме блога. Приглашаю Вас посмотреть и подписаться что бы не пропустить новые выпуски.

Итак, как же узнать, кто держит тот или иной файл или папку.

Для скриншотов я смоделировал такую ситуацию нарочно, открыв в Word файл "D:\temp\Doc1.docx" и пытаясь его в это же время удалить в проводнике. При попытке удалить файл получаю следующее сообщение

Поищем этот документ в Process Explorer: Find->Find Handle or DLL…

В появившемся окне вводим имя заблокированного файла и жмем Search

Двойной клик на найденном файле и вы переходите в дерево процессов.

В нижем списке выбираете ваш файл (он подсвечен серым) и в контекстном меню выбираете команду Close Handle. Соглашаетесь с предупреждением, что приложение может упасть и все. Файл разблокирован и может быть спокойно удален.

Есть еще один способ сделать то же самое – воспользоваться утилитой Unlocker. Она тоже бесплатна и ее можно скачать с сайта разработчика http://cedrick.collomb.perso.sfr.fr/unlocker/.

Утилита требует инсталляции . После инсталляции, в проводнике, в контекстном меню появится пункт Unlocker.

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

Это конечно проще чем с Process Explorer :). Еще один плюс – если файл нельзя удалить сразу, например какой-нибудь системный файл, то Unlocker может предложить его удалить во время перезагрузки системы.

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

Если вы пытаетесь изменить / удалить какой-либо конкретный файл на своем компьютере, но появляется сообщение об ошибке « Действие не может быть завершено, потому что папка открыт в другой программе », вы не можете удалить / изменить файл, не остановив другую программу, которая его использует. Некоторые пользователи Windows 10 следуют процессам, описанным в этой статье, чтобы узнать, какой процесс «блокирует» файл на вашем компьютере, остановите процесс, и вы снова сможете изменить / удалить файл на своем компьютере.

Пример -

В конце концов, мы попытались удалить «Adobe» из папки Temp , и было получено сообщение об ошибке « Действие не может быть завершено, потому что файл открыт в Adobe Genuine Software Integrity Service ».

В обоих методах, описанных ниже, мы будем использовать этот случай.

Метод-1 Использование монитора ресурсов для обнаружения и завершения процесса-

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

1. Нажмите клавишу Windows + R , чтобы открыть окно Выполнить на вашем компьютере. В окне Run введите « resmon » и нажмите Enter .

На вашем компьютере откроется окно монитора ресурсов .

2. В мониторе ресурсов

.Окна

. Используя C #, как определить, какой процесс заблокировал файл?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технолог
.

Как определить, какой процесс Windows блокирует файл или папку - Справочный центр GSX

Последнее обновление: . Автор: Поддержка GSX (Янн) .

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

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

Sysinternals Process Explorer | Окна

Симптомы

При попытке удалить, переместить или переименовать файл вы получаете системное предупреждение Windows:

  • «Невозможно удалить файл: доступ запрещен».
  • «Произошло нарушение совместного использования».
  • «Возможно, используется исходный или целевой файл».
  • «Файл используется другой программой или пользователем».
  • «Убедитесь, что диск не заполнен, не защищен от записи и что файл в настоящее время не используется».

Как решить проблему

Один из самых простых способов работы с заблокированными файлами или папками - использовать Microsoft Sysinternals Process Explorer .

Определите, какая программа использует файл

С помощью Process Explorer найти программу очень просто:

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

Определите, какой дескриптор или DLL использует файл

  1. Открыть обозреватель процессов
    • Запуск от имени администратора .
  2. Введите сочетание клавиш Ctrl + F .
    • Или щелкните меню «Найти» и выберите «Найти дескриптор или DLL».
  3. Откроется диалоговое окно поиска.
  4. Введите имя заблокированного файла или другого интересующего файла.
    • Частичных имен обычно достаточно.
  5. Нажмите кнопку «Искать».
  6. Список будет создан.
    • Может быть несколько записей.

Снять блокировку файла или папки

Чтобы снять блокировку с файла, над которым вы пытаетесь выполнить операцию обслуживания, вам нужно будет убить соответствующий процесс. Отдельную программу или дескриптор в списке, предоставленном Process Explorer, можно убить с помощью:

  1. Выбор процесса / дескриптора / записи программы.
  2. Нажатие клавиши удаления.

Будьте осторожны при удалении дескрипторов, поскольку это может привести к нестабильному поведению и нестабильности.

Загрузки

Вы можете скачать Sysinternals Process Explorer здесь.


Была ли эта статья полезной?

144 из 370 нашли это полезным .

C ++ | Windows - есть ли способ узнать, какой процесс владеет заблокированным файлом?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
.Окна

- инструмент командной строки для выяснения, кто блокирует файл

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Wh
.

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

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

  • «Невозможно удалить файл: доступ запрещен»
  • «Произошло нарушение совместного использования»
  • «Исходный или целевой файл может использоваться»
  • «Файл используется другой программой или пользователем».
  • «Убедитесь, что диск не заполнен, не защищен от записи и что файл в настоящее время не используется»

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

Как узнать какая программа использует файл

В Windows 7 или 8 системное сообщение может сказать вам, какая программа использует файл. Если это не так или если вы используете Windows XP, есть простой способ найти программу:

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

Как узнать, какой дескриптор или DLL использует файл

  1. Откройте Process Explorer от имени администратора.
  2. Введите сочетание клавиш Ctrl + F .Или щелкните меню «Найти» и выберите «Найти дескриптор или DLL».
  3. Откроется диалоговое окно поиска.
  4. Введите имя заблокированного файла или другого интересующего файла. Обычно достаточно частичных имен.
  5. Нажмите кнопку «Искать»,
  6. Список будет создан. Может быть несколько записей.
  7. Отдельный дескриптор в списке можно убить, выбрав его и нажав клавишу удаления. Однако при удалении дескрипторов необходимо соблюдать осторожность, поскольку могут возникнуть нестабильности.Часто просто перезагрузка освобождает заблокированный файл.

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

Связанная статья: Лучшее бесплатное средство для удаления файлов из удаленных файлов

Опубликуйте свой любимый совет! Знаете полезный технический совет или уловку? Тогда почему бы не опубликовать его здесь и не получить полную оценку? Щелкните здесь, чтобы сообщить нам свой совет.


Этот раздел советов поддерживает Вик Лори. Вик ведет несколько веб-сайтов с практическими рекомендациями, руководствами и учебными пособиями по Windows, в том числе сайт для изучения Windows и Интернета, а также сайт с советами по Windows 7.

Щелкните здесь, чтобы увидеть больше подобных вещей. Еще лучше получить технические советы, доставленные через ваш RSS-канал, или, как вариант, отправить RSS-канал по электронной почте прямо на ваш почтовый ящик.

.

Смотрите также