Как узнать список файлов которыми пользуется программа?
Как узнать список файлов которыми пользуется программа?
-
Вопрос заданболее года назад
-
857 просмотров
Раньше для этого использовался FileMon. Сейчас Майкрософт его прибил (но на сторонних сайтах ещё можно найти) и предлагает использовать Process Monitor.
API Monitor — если знаете winapi — возможности программы безграничны. Можно ставить выполнение программы на паузу, менять параметры функций на лету. Также можно отследить к каким файлам конкретная программа имеет доступ, и с какими флагами, также можно программе подсунуть другой файл во время выполнения. Но на первый взгляд может показаться немного сложновата.
Ну а если нужен простой, как 2 копейки файловый монитор, тогда гуглите windows filemon или windows file monitor.
Диспетчер задач -> производительность -> Открыть мониторинг ресурсов (снизу):
Вкладка «Диск», поставить галочку на интересующий процесс и снизу отобразятся все чтения/записи в файлы.
Пригласить эксперта
В разных ОС это делается по-разному
-
Показать ещё
Загружается…
06 февр. 2023, в 23:16
7000 руб./за проект
06 февр. 2023, в 23:08
8000 руб./за проект
06 февр. 2023, в 22:40
500 руб./в час
Минуточку внимания
0 / 0 / 0 Регистрация: 05.10.2019 Сообщений: 3 |
|
1 |
|
Определить к каким файлам обращалась программа при запуске и записать в файл05.10.2019, 22:18. Показов 7396. Ответов 5
Собственно как в Винде «Определить к каким файлам обращалась программа при запуске и записать в файл»?
__________________
0 |
Модератор 15148 / 7736 / 726 Регистрация: 03.01.2012 Сообщений: 31,798 |
|
06.10.2019, 10:51 |
2 |
Kaphibergen, Типа так procmon
0 |
89 / 75 / 17 Регистрация: 18.08.2016 Сообщений: 341 |
|
06.10.2019, 15:59 |
3 |
Sandboxie
0 |
0 / 0 / 0 Регистрация: 05.10.2019 Сообщений: 3 |
|
06.10.2019, 21:36 [ТС] |
4 |
gecata, Как этой штукой записать в файл обращения, да еще и конкретной программы? useroot, Вообще не то.
0 |
Модератор 15148 / 7736 / 726 Регистрация: 03.01.2012 Сообщений: 31,798 |
|
07.10.2019, 10:37 |
5 |
Настроить фильтр и сохранить логи. Кликните здесь для просмотра всего текста
0 |
0 / 0 / 0 Регистрация: 05.10.2019 Сообщений: 3 |
|
07.10.2019, 22:35 [ТС] |
6 |
gecata,
0 |
Как узнать какие процессы 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 от имени администратора
- На панели инструментов найдите значок в виде прицела (иконка выделена на рисунке выше)
- Перетащите иконку на заблокированный файл или каталог
- Программы, которые используют данный файл, будут подсвечены в общем списке процессов в главном окне Process Explorer
Как узнать, какие программы и DLL держат открытые маркеры (дескрипторы) на файл в Windows 7?
- Откройте Process Explorer от имени администратора
- Нажмите комбинацию клавиш «Ctrl + F». Или выберите в меню «Поиск» пункт «Find a Handle or DLL»
- Откроется диалоговое окно поиска
- Введите имя заблокированного файла или часть его названия. Как правило, достаточно части имени
- Нажмите кнопку «Поиск»
- Откроется список со всеми программами и dll, которые используют данный файл. Вернее их открытые маркеры (дескрипторы) на файл
- Вы можете удалить все маркеры (дескрипторы) простым нажатие кнопки «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 (симулятор гонок на грузовиках) ко всему прочему еще и выдает ошибку, что, мол, файлы отличаются от оригинала.
В этом случае это может означать только то, что игра загружена из ненадежного источника, а поэтому и запуск, и доступ к онлайн-прохождению оказываются заблокированными. Выходом может стать повторная загрузка официальной версии или же установка специальных «фиксов» для устранения проблем с работой.
Заключение
Как видим, ситуация некритична. Если по какой-то причине система сообщает, что файл занят другой программой, что делать и какое принять решение по исправлению проблемы, можно понять из всего предложенного. Собственно, любой способ на выбор пользователя может решить такую ситуацию. Что предпочесть? Многие советуют использовать именно 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.
- Откройте Resource Monitor , который можно найти
- Выполнив поиск Resource Monitor или resmon.exe в меню «Пуск», или
- Как кнопка на вкладке « Производительность » в вашем диспетчере задач
- Перейти на вкладку CPU
- Используйте поле поиска в разделе « Связанные дескрипторы »
- Смотрите синюю стрелку на снимке экрана ниже
Найдя дескриптор, вы можете определить процесс, посмотрев на столбец «Изображение» и / или «PID».
Затем вы можете попытаться закрыть приложение, как обычно, или, если это невозможно, просто щелкнуть правой кнопкой мыши по дескриптору и завершить процесс прямо оттуда. Очень просто!
Просто будьте очень осторожны с закрывающимися ручками; это даже более опасно, чем вы думаете, из-за повторного использования дескриптора — если вы закроете дескриптор файла, и программа откроет что-то еще, этот оригинальный дескриптор файла, который вы закрыли, может быть повторно использован для этого «чего-то еще». А теперь угадайте, что произойдет, если программа продолжит работу, думая, что она работает с файлом (чей дескриптор вы закрыли), когда фактически этот дескриптор файла теперь указывает на что-то другое.
см. сообщение Раймонда Чена на эту тему
Предположим, у службы поиска есть файл, открытый для индексации, но он временно застрял, и вы хотите удалить файл, поэтому вы (неразумно) принудительно закрываете дескриптор. Служба индекса поиска открывает свой файл журнала, чтобы записать некоторую информацию, и дескриптор удаленного файла повторно используется в качестве дескриптора файла журнала. Завершенная операция, наконец, завершается, и служба индекса поиска, наконец, подходит к закрытию того дескриптора, который у нее был открыт, но в конечном итоге невольно закрывает дескриптор файла журнала.
Служба индекса поиска открывает другой файл, скажем, файл конфигурации для записи, чтобы обновить некоторое постоянное состояние. Дескриптор файла журнала перерабатывается как дескриптор файла конфигурации. Служба индекса поиска хочет записать некоторую информацию, поэтому она записывает в свой файл журнала. К сожалению, дескриптор файла журнала был закрыт, и этот дескриптор повторно использовался для его файла конфигурации. Зарегистрированная информация попадает в файл конфигурации, повреждая его.
Между тем, другой дескриптор, который вы принудительно закрыли, был повторно использован как дескриптор мьютекса, который используется для предотвращения повреждения данных. Когда оригинальный дескриптор файла закрыт, дескриптор мьютекса закрывается и защита от повреждения данных теряется. Чем дольше служба работает, тем более поврежденными становятся ее индексы. В конце концов, кто-то замечает, что индекс возвращает неверные результаты. И когда вы пытаетесь перезапустить службу, она терпит неудачу, потому что ее файлы конфигурации были повреждены.
Вы сообщаете о проблеме компании, которая предоставляет службу индекса поиска, и они определяют, что индекс был поврежден, файл журнала загадочным образом прекратил запись, а файл конфигурации был перезаписан мусором. Некоторому плохому специалисту поручена безнадежная задача выяснить, почему служба портит свои индексы и файлы конфигурации, не зная, что источником повреждения является то, что вы принудительно закрыли дескриптор.
Вы тут: Главная → Windows → [видео] Process Monitor: как отследить приложение, записывающее непонятные файлы на диск
Непонятные файлы на диске мы обнаруживаем двумя путями. Либо они явно видны в проводнике или файловом менеджере, либо к ним приводят поиски причины исчезновения свободного места на диске. Хорошо, если после удаления файлов, они больше не появляются. Но так бывает не всегда, и в этом случае приходится определять приложение, которое их создает.
Однажды на форум обратился человек, у которого какое-то приложение записывало в корень системного диска файлы, в имени которых содержится tmp _out.
Конечно, не исключено, что эта система заражена, и требуется тщательная проверка всевозможными антивирусными средствами. Но далеко не всегда проблема связана с вредоносным кодом, и тогда понадобится другой подход. Проще всего вычислить виновника появления таких файлов с помощью утилиты Process Monitor. Из видео за четыре минуты вы узнаете, как это сделать.
Отслеживание активности
При запуске утилита отслеживает несколько типов системной активности:
- реестр
- файловую систему
- сеть
- процессы и потоки
Поскольку мы ищем причину записи файлов на диск, нужно сосредоточиться на активности в файловой системе. Для этого на панели инструментов оставьте включенной только одну кнопку, отвечающую за активность на диске.
Кроме того, убедитесь, что утилита отслеживает активность. Если у вас перечеркнута кнопка, которая на рисунке обведена красным, нажмите CTRL+E.
На рисунке выше активность отслеживается, причем только в файловой системе.
Основной фильтр
Теперь нужно применить фильтр, чтобы исключить не относящуюся к делу активность. Нажмите сочетание клавиш CTRL+L, и вы увидите возможности фильтрации. В Process Monitor сразу активны некоторые фильтры, исключающие отслеживание деятельности самой программы, а также некоторых системных компонентов (файла подкачки, таблицы MFT и т.д.). Это сделано для того, чтобы исключить мониторинг стандартной активности системы. В большинстве случаев удалять эти фильтры не нужно, и достаточно просто добавить свой.
На рисунке выше показан фильтр, который будет отслеживать создание и изменение всех файлов, в путях к которым содержится tmp _out. Давайте разберем фильтр подробнее слева направо:
- Path. Путь в файловой системе. Также можно указывать разделы реестра, когда отслеживается активность в нем.
- contains. Условие, по которому определяется поиск ключевого слова. В переводе с английского это слово означает «содержит». В зависимости от задачи можно конкретизировать условие, выбрав вариант begins with (начинается с) или ends with (заканчивается на).
- tmp _out. Ключевое слово, которое в данном случае должно содержаться в пути. Имя файла и его расширение являются частью полного пути к файлу.
- Include. Включение заданного условия в список отслеживаемых.
Не забудьте нажать кнопку Add, чтобы добавить фильтр в список. Впрочем, если вы забудете, Process Monitor напомнит об этом, прежде чем закрыть окно фильтров.
В данном случае я использовал часть имени файла в качестве ключевого слова, поскольку все непонятные файлы содержат в имени tmp_out. Если файлы создаются с разными именами, но зато в определенной папке, используйте путь к этой папке в качестве ключевого слова.
Поскольку задано жесткое условие фильтрации файловой активности, в окне программы, скорее всего, теперь не будет отображаться никаких процессов. Но Process Monitor уже начал их отслеживать.
Проверить работу фильтра очень просто. Достаточно создать в текстовом редакторе файл с искомым именем или в наблюдаемой папке, и Process Monitor моментально отреагирует на это.
Увеличить рисунок
Дополнительные фильтры
Обратите внимание, что утилита зафиксировала не только активность блокнота, но также проводника и поиска Windows. Не относящиеся к делу процессы можно исключить из результатов, создав дополнительные фильтры. Достаточно щелкнуть по процессу правой кнопкой мыши и выбрать из контекстного меню пункт Exclude <имя процесса>. Это самый простой способ создания фильтра, но можно сделать это из окна фильтрации, как показано выше. В этом случае условие будет: Process Name – Is — <имя процесса> — Exclude.
Запись и открытие лога
Когда вы точно знаете объект отслеживания (папку, раздел реестра, процесс и т.п), может иметь смысл не записывать в журнал отфильтрованные (ненужные) события: Filter — Drop filtered events. Это существенно сократит размер лога.
Учтите, что при длительном отслеживании размер лога может измеряться гигабайтами. По умолчанию Process Monitor записывает лог в файл подкачки. Если у вас маленький системный раздел, имеет смысл сохранять лог в файл на другом разделе диска.
Для сохранения лога в файл нажмите сочетание клавиш CTRL+B и укажите имя и желаемое расположение файла.
Изменения вступают в силу после перезапуска захвата активности. Теперь можно смело оставить Process Monitor включенным на длительное время, не опасаясь за лимит дискового пространства.
Остановить отслеживание активности можно сочетанием клавиш CTRL+E.
Впоследствии вы всегда сможете загрузить в утилиту лог из сохраненного файла. Закройте Process Monitor и дважды щелкните файл лога с расширением PML. Содержимое лога отобразится в окне Process Explorer.
Человек, обратившийся на форум с проблемой, так и не вернулся сообщить, помог ли ему мой совет. Но он был с таким вопросом не первый и, наверняка, не последний. Если вопрос возникнет у вас, вы сможете ответить на него с помощью Process Monitor.
О видео
Читатели блога выразили поддержку моей идее дополнять статьи видеоматериалами. Я подумал, что этот случай очень хорошо подходит, и записал ролик длиной менее 4 минут.
Если честно, создание такого видео занимает намного больше времени, чем написание статьи. Поэтому я в любом случае не готов заменять печатный текст видеоматериалами. Но мне кажется, что в данном случае видео интереснее и понятнее. А что вы думаете по этому поводу?
Видео длится около четырех минут, и я старался сделать его быстрым и емким. Ведь в реальности подготовка к поимке приложения занимает буквально одну минуту. Вас устраивает скорость изложения?
Более подробный рассказ о Process Monitor и другие примеры его практического использования вы можете посмотреть в видео моего коллеги Василия Гусева, если у вас есть свободные 40 минут
-
Категория ~
Технические советы -
– Автор:
Игорь (Администратор)
- Как узнать, какие программы использует файл в Windows 7?
- Как узнать, какие программы и DLL держат открытые маркеры (дескрипторы) на файл в Windows 7?
Иногда, при попытке удалить, переместить или переименовать файл, могут возникать различные окна с системными предупреждениями следующего вида:
- «Не удается удалить файл: отказано в доступе» / «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 от имени администратора
- На панели инструментов найдите значок в виде прицела (иконка выделена на рисунке выше)
- Перетащите иконку на заблокированный файл или каталог
- Программы, которые используют данный файл, будут подсвечены в общем списке процессов в главном окне Process Explorer
Как узнать, какие программы и DLL держат открытые маркеры (дескрипторы) на файл в Windows 7?
- Откройте Process Explorer от имени администратора
- Нажмите комбинацию клавиш «Ctrl + F». Или выберите в меню «Поиск» пункт «Find a Handle or DLL»
- Откроется диалоговое окно поиска
- Введите имя заблокированного файла или часть его названия. Как правило, достаточно части имени
- Нажмите кнопку «Поиск»
- Откроется список со всеми программами и dll, которые используют данный файл. Вернее их открытые маркеры (дескрипторы) на файл
- Вы можете удалить все маркеры (дескрипторы) простым нажатие кнопки «Delete», чтобы разблокировать доступ к файлу. Тем не менее, обращаем ваше внимание на то, что при удалении дескрипторов, могут возникнуть проблемы. Например, если это сделать во время сохранения файла, то информация в файле может быть повреждена. Поэтому, если вы сомневаетесь, то можете просто перезагрузить компьютер. Часто, этого вполне достаточно, чтобы разблокировать доступ к файлу.
Process Explorer можно скачать здесь.
Примечание: Как альтернативу, вы так же можете программы из обзора Лучшие бесплатные утилиты для удаления блокированных файлов. Несмотря на их название, они так же позволяют копировать и перемещать файлы. А так же позволяют обойти ряд таких ограничений, как блокировка доступа к файлу при старте системы.
Теперь, вы знаете, как узнать какие процессы Windows используют файл. А так же знаете, как можно разблокировать доступ к файлам.
☕ Понравился обзор? Поделитесь с друзьями!
-
Как отключить историю поисковых запросов для аккаунтов Google?
Технические советы -
EMET мощный инструмент от Microsoft для обеспечения безопасности Windows
Технические советы -
Где найти бесплатные иконки?
Технические советы -
Как узнать какие программы подключены к Интернету (CurrPorts)?
Технические советы -
Как настроить автоматический запуск программ или скриптов при выключении Windows?
Технические советы -
Программа Hwinfo характеристики компьютера и проверка состояния устройств в Windows
Технические советы
Добавить комментарий / отзыв
Разработчики из Windows Sysinternals выпустили новую версию утилиты Process Monitor 3.0, популярной утилиты для мониторинга системы. Этот полезный инструмент предоставит подробную и актуальную информацию об активности всех приложений, выполняемых на вашем ПК. В том числе пользователь сможет узнать, к каким файлам обращаются программы, с какими ключами реестра взаимодействуют, какие процессы запускаются от их лица и многое другое. Предлагаемая версия не может похвастаться большим количеством новых функций, однако некоторые предложенные изменения наверняка вызовут интерес у пользователей.
К примеру, с помощью предлагаемого инструмента пользователь сможет выявлять причины утечек системных ресурсов, происходящих в его отсутствие. Для решения указанной задачи запустите Process Monitor, выберите опцию «Capture Events» в меню «File» и изучите имена процессов в левой части экрана. На этой панели можно найти информацию о файлах, открываемых и закрываемых различными процессами, и узнать к каким ключам реестра обращается интересующая вас программа. Эта информация поможет обнаружить нежелательные программы, например приложения, работающие в фоновом режиме и удалить их с целью высвобождения ресурсов системы. Не менее полезной утилита окажется при решении проблем в работе компьютера. Допустим, вы пытаетесь запустить программу под названием app.exe, однако приложение неожиданно завершает свою работу сразу же после запуска. Благодаря Process Monitor вы сможете идентифицировать отсутствующие файлы или неправильно настроенные параметры приложения.
При запуске новой процедуры трассировки, пользователь нередко получает отчет внушительных размеров, содержащий сотни и тысячи строк. Размер отчета можно слегка сократит с помощью специальных фильтров, однако, даже после этого можно будет наблюдать некоторый переизбыток информации. Вниманию пользователей версии Process Monitor 3.0 предлагается поддержка закладок, предназначенных для выделения наиболее важных данных (опция «Toggle Bookmark» в контекстном меню). Новая функция может использоваться даже со старыми отчетами. Выбранные пользователем строки для лучшей видимости выделяются полужирным шрифтом. А переход между закладками осуществляется одним нажатием на кнопку. Благодаря этому нововведению, владелец компьютера сможет быстро и без лишних усилий обнаружить всю интересующую его информацию.
В версии Process Monitor 3.0 был усовершенствован механизм записи переменных окружения, в особенности в момент запуска процесса. Выберите приложение и выполните операцию «Process Start», после чего вы увидите папку, из которой запускается конкретная программа и полную копию его текущего окружения. Разработчики также сообщают, что выпущенная версия утилиты может похвастаться более тесной совместимостью с новой операционной системой Windows 8.
Копию приложения можно бесплатно загрузить с сайта производителя – http://technet.microsoft.com/en-us/sysinternals/bb896645.
Большинство программ, которые вы устанавливаете на компьютер, хранят часть своих файлов в папке Program Files, а часть — в разных служебных папках пользователя. А вот настройки свои они предпочитают хранить в системном реестре. Знать, где именно хранит свои настройки та или иная находящаяся в активном состоянии программа бывает полезно, но как определить ветку реестра, в которую эти самые настройки записаны?
С помощью Procmon или иначе Process Monitor — маленькой портативной тулзы, входящей в состав пакета утилит Sysinternals, предназначенного для обслуживания и системного администрирования Windows. Хорошо, предположим, что мы хотим узнать, к каким ключам реестра у нас обращается программа ClipClip или какая-либо иная программа. Первым делом запускаем от имени администратора Procmon, а затем и отслеживаемое приложение, заодно определяя полное название его исполняемого файла в Диспетчере задач.
Фильтруем ненужные процессы
В нашем примере исполняемый файл приложения называется ClipClip.exe, отфильтруем его, убрав из поля зрения все ненужные нам процессы.
Для этого в Process Monitor идем в меню «Filter».
Выбираем в нём опцию с тем же названием и выбираем в выпадающих списках в полях следующие параметры:
- Process Name.
- Is.
- Название процесса.
Остальные настройки не меняем и жмем кнопку «Add», чтобы добавить наш фильтр, а затем нажимаем кнопки «Apply» и «OK», дабы применить фильтр.
Обратите внимание на колонку «Operation»: пункты, в названии которых имеется элемент строки «Reg» это и есть ключи реестра, к которым обращается программа.
Кстати, на панели инструментов утилиты можете отключить отображение других типов активности процесса, оставив только обращение к реестру. Вот таким нехитрым способом можно легко выяснить, к каким ключам реестра обращается программа в процессе своей работы.
Официальна страница утилиты: docs.microsoft.com/ru-ru/sysinternals/downloads/procmon
Загрузка…
Как я могу узнать, какой процесс блокирует файл или папку в 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
Перейдите в Find → Handle 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%)
- Бесплатная альтернатива WinRAR (RANDOM — 50%)
Как узнать, какой процесс блокирует файл или папку в 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
Перейдите в Find → Handle or DLL.
В текстовом поле «Handle or DLL substring:» введите путь до файла или папки. Будут показаны все процессы, которые имеют открытый обработчик на этот файл.
3. OpenedFilesView
OpenedFilesView это бесплатная программа не требующая установки, она покажет все открытые файлы, имеется возможность искать по имени или пути файла:
4. LockHunter
LockHunter — это надёжная программа для разблокировки файлов.
Это бесплатный инструмент для удаления файлов, заблокированных неизвестным процессом. LockHunter полезен для борьбы с вредоносными программами и другими программами, которые блокируют файлы без причины. В отличие от других подобных инструментов, он удаляет файлы в корзину, поэтому вы можете восстановить их, если удалили по ошибке.
Узнайте, какой процесс блокирует файл или папку в Windows
Как узнать, какой процесс блокирует файл или папку в Windows?
Например, при попытке удалить папку Windows сообщает об этом:
Действие не может быть выполнено, потому что папка открыта в другой программе
Случается то же самое с файлом, но как узнать, какая программа или приложение в настоящее время его использует и не позволяет мне удалить файл или папку?
9 ответов
Для Windows 7, 8 и 10 для этого можно использовать встроенный Resource Monitor .
- Откройте Монитор ресурсов , который можно найти
- При поиске resmon.exe в меню «Пуск» или
- В качестве кнопки на вкладке Производительность в Диспетчере задач
- Откройте вкладку CPU и используйте поле поиска в разделе Связанные ручки
- Указывается синей стрелкой на скриншоте ниже
Если это не очевидно, когда вы нашли дескриптор, вы можете определить процесс, посмотрев на столбец Image и /или PID.
Затем вы можете закрыть приложение, если это возможно, или просто щелкнуть правой кнопкой мыши по строке, и вы получите возможность убить процесс прямо там. Легкий peasy!
Проводник процессов Microsoft /SysInternals — перейдите в Find> Find Handle или DLL. В текстовом поле «Ручка или DLL подстрока:» введите путь к файлу (например, «C: path to file.txt») и нажмите «Поиск». Все процессы, у которых есть открытый дескриптор этого файла, должны быть перечислены.
WhoLockMe — расширение проводника, которое добавляет пункт меню правой кнопки мыши
N.B. WhoLockMe, похоже, не работает с Win 10 (по крайней мере, мне не удалось зарегистрировать его ни в одной из 32- или 64-разрядных версий regsvr32.exe).
Вы когда-нибудь задавались вопросом, какая программа имеет определенный файл или каталог? Теперь вы можете это выяснить.
Чтобы узнать, какой процесс использует определенный файл, выполните следующие действия:
Перейдите в Найти , Найти Handle или DLL .. или просто нажмите Ctrl + F .
LockHunter может разблокировать любые обработчики, которые могут заблокировать ваши файлы или папки. В отличие от подобных автострад, он поддерживает как 32, так и 64-битные Windows.
- Показывает процессы, блокирующие файл или папку
- Позволяет разблокировать, удалить, скопировать или переименовать заблокированный файл
- Позволяет убить процесс блокировки
- Позволяет удалить процессы блокировки с жесткого диска.
- Интегрируется в меню Проводника
- Он удаляет файлы в корзину, поэтому вы можете их восстановить, если они были удалены по ошибке.
- Поддержка 32-разрядной и 64-битной Windows
EMCO UnlockIT может идентифицировать процесс, который заблокировал файл, а также разблокировать файл, чтобы вы может удалить /отредактировать /переместить его. Программа полностью бесплатна, хотя более новая версия немного медленнее и более раздутой, чем оригинал (у которого был простой, неподтвержденный графический интерфейс, но загружался практически мгновенно и без раздражающего заставки). Кроме того, оригинальная версия используется для автоматического всплытия всякий раз, когда вы вызываете ошибку, которая позволяет вам мгновенно разблокировать файл и выполнить операцию, которую вы пытаетесь выполнить.
Тем не менее, UnlockIT — невероятно полезная программа, которая обеспечивает базовые функции, которые критически отсутствуют в Windows. Это один из стандартных наборов инструментов, которые я устанавливаю на всех компьютерах Windows, над которыми я работаю.
Вот мое открытие & Решение.
Кстати, ни один из вышеперечисленных ответов не решил мою проблему.
Я даже пытался использовать UNLOCKER, который оказался бесполезным.
Моя проблема была в том, что Memeo Autosync Backup
По-видимому, этот процесс резервного копирования оставляет достаточно «файла-призрака». Этот «призрак, как файл», будет отображаться всякий раз, когда я буду ALT-TAB на моем компьютере (Windows Professional XP), то есть я увижу, что в моей TASK BAR запускаются две программы MS Excel, когда я только ОДИН был видимым.
Я столкнулся с этим решением, когда подумал, что это могла быть защита SYMANTEC Endpoint (Anti-Virus); и отключил программу. Однако я продолжал получать сообщение об ошибке:
невозможно удалить (файл LARGE.xls): он используется другим человеком или программой. Закройте все программы, которые могут использовать этот файл, и повторите попытку.
Впоследствии я продолжал видеть уведомление Memeo о «синхронизации» и ВЫКЛЮЧИТЬ программу.
Затем NO NO ERROR.
Для вас это может быть ЛЮБОЙ из этих фоновых сейвов.
Если вы не знаете программу, которую он использует, вы можете перейти в «Мой компьютер»; щелкните правой кнопкой мыши; выберите «Управление». В разделе «Системные инструменты»> Общие папки> Откройте файлы, вы сможете увидеть пользователя, который заблокировал файл. Здесь вы можете закрыть файл, а затем выполнить задачу переименования или удаления файла. Надеюсь, что это поможет
Дополнительная возможность, просто чтобы сэкономить людям время, которое я потратил:
В более старых версиях Windows вы можете получить «Доступ запрещен — у вас могут не быть прав или файл может быть использован». Если вы обнаружите через Process Explorer, что файлы, по сути, не открыты кем-либо, есть вероятность, что проблема связана с безопасностью. Используя учетную запись администратора, выберите файлы в проводнике, щелкните правой кнопкой мыши и выберите «Свойства», «Безопасность», «Дополнительно», «Владелец». Вероятность того, что файлы принадлежат учетной записи, которая больше не существует или больше не может быть проверена, существует (из-за изменения настроек доверия Active Directory).
Узнайте, какой процесс блокирует файл или папку в Windows
Как я могу узнать, какой процесс блокирует файл или папку в Windows?
Например, при попытке удалить папку Windows сообщает об этом:
Действие не может быть завершено, потому что папка открыта в другой программе
Происходит то же самое с файлом, но как мне узнать, какая программа или приложение использует его в настоящее время и не позволяет мне удалить файл или папку?
В openfiles команде должна быть включена поддержка локальных файлов при запуске openfiles /local on и перезапуске.
Для этого вы можете использовать Resource Monitor, который встроен в Windows 7, 8 и 10.
- Откройте Resource Monitor , который можно найти
- Выполнив поиск Resource Monitor или resmon.exe в меню «Пуск», или
- Как кнопка на вкладке « Производительность » в вашем диспетчере задач
- Перейти на вкладку CPU
- Используйте поле поиска в разделе « Связанные дескрипторы »
- Смотрите синюю стрелку на снимке экрана ниже
Найдя дескриптор, вы можете определить процесс, посмотрев на столбец «Изображение» и / или «PID».
Затем вы можете попытаться закрыть приложение, как обычно, или, если это невозможно, просто щелкнуть правой кнопкой мыши по дескриптору и завершить процесс прямо оттуда. Очень просто!
Microsoft / SysInternals Process Explorer — выберите «Найти»> «Найти дескриптор» или «DLL». В текстовом поле «Обрабатывать или подстрока DLL:» введите путь к файлу (например, «C: path to file.txt») и нажмите «Поиск». Все процессы, которые имеют открытый дескриптор этого файла, должны быть перечислены.
WhoLockMe — расширение для проводника, которое добавляет контекстное меню
NB WhoLockMe по- видимому, не работает с Win 10 ( по крайней мере , я не смог зарегистрировать его с любым из 32- или 64-разрядных версий regsvr32.exe).
Посмотрите на Process Explorer ( procexp.exe ).
Из его введения:
Задумывались ли вы, какая программа имеет определенный файл или каталог открыт? Теперь вы можете узнать.
Чтобы узнать, какой процесс использует определенный файл, выполните следующие действия:
Зайдите в Find , Find Handle или DLL .. или просто нажмите Ctrl + F .
Введите имя файла и нажмите Поиск .
Process Explorer перечислит все процессы, которые имеют дескриптор открытого файла. Нажмите на запись, чтобы сфокусировать процесс в главном окне.
При желании вы можете даже закрыть ручку вручную через нижнюю панель ( Ctrl + L ):
LockHunter может разблокировать любые обработчики, которые могли заблокировать ваши файлы или папки. В отличие от аналогичных бесплатных программ, он поддерживает как 32-разрядные, так и 64-разрядные версии Windows.
- Показывает процессы, блокирующие файл или папку
- Позволяет разблокировать, удалить, скопировать или переименовать заблокированный файл
- Позволяет убить процесс блокировки
- Позволяет удалить процессы блокировки с жесткого диска
- Интегрируется в меню Проводника
- Он удаляет файлы в корзину, поэтому вы можете восстановить их, если удалили по ошибке
- Поддерживает как 32, так и 64-битную Windows
EMCO UnlockIT может идентифицировать процесс, который заблокировал файл, а также разблокировать файл, чтобы вы могли удалить / отредактировать / переместить его. Программа полностью бесплатна, хотя более новая версия немного медленнее и более раздутая, чем оригинал (который имел простой, некорпорированный графический интерфейс, но загружался практически мгновенно и без раздражающего заставки). Кроме того, исходная версия использовалась для автоматического всплывающего сообщения при возникновении упомянутой ошибки, что позволяет мгновенно разблокировать файл и выполнить операцию, которую вы пытались выполнить.
Тем не менее, UnlockIT — невероятно полезная программа, которая предоставляет базовую функциональность, которая критически отсутствует в Windows. Это один из стандартных наборов утилит, который я устанавливаю на все компьютеры с Windows, на которых работаю.
Здесь было мое открытие и решение.
Кстати, ни один из приведенных выше ответов не решил мою проблему.
Я даже пытался использовать UNLOCKER, который оказался бесполезным.
У меня проблема была с Memeo Autosync Backup
По-видимому, этот процесс резервного копирования оставляет достаточно «призрачного файла». Этот «призрачный файл» появлялся всякий раз, когда я запускал ALT-TAB на моем компьютере (Windows Professional XP), то есть я видел ДВА программы MS Excel, работающие, когда у меня была только ОДНА видимая, на панели задач.
Я столкнулся с этим решением, когда подумал, что это может быть защита от вирусов SYMANTEC Endpoint (Anti-Virus); и отключил программу. Тем не менее, я продолжал получать сообщение об ошибке:
невозможно удалить (файл LARGE.xls): он используется другим пользователем или программой. Закройте все программы, которые могут использовать этот файл, и повторите попытку.
Впоследствии я продолжал видеть уведомление Memeo о «синхронизации» и выход из программы.