Windows какое приложение занимает файл

Windows какое приложение занимает файл

Один из них такой: А вот как определить процесс, если этим процессом является драйвер?

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

NirSoft OpenedFilesView кроме того, что это процесс системный, тоже не пишет ничего.

Ни Process Explorer, ни Process Monitor, ни другие утилиты не пишут каким процессом занят файл, если этим процессом является какой-нибудь драйвер.

В папке C:\Windows\Temp у меня появился фай TmpFile1.

Разер файла 8 409 088 Байт (ровно 16424 кластера).

Внутри файл начинается с «. RajuRam . xV4 . RamDisk . FAT32 . «, потом идут одни нули «. 00 . » и заканчивается так «. MS-HORDRIVE . «.

Удалить, переместить, переименовать его ничем не возможно.

Определить, какой процесс его создает, тоже не получается.

«Методом тыка» и путем «гугления» проблемы, путем проб и ошибок, было найдено, что этим процессом является драйвер.

Это драйвер aksdf.sys:
— Description: Aladdin Data Mini-Filter Driver
— ImagePath: C:\Windows\system32\drivers\aksdf.sys
— Start: 2 — это автозагрузка (0 — загрузочный, 1 — системный, 2 — автозагрузка, 3 — вручную, 4 — отключен)

Короче, с какой-то программой, даже не знаю какой, установился алладиновский драйвер защиты Driver Sentinel HASP.

Если проделать операции Диспетчер устройств >>> Вид >>> Показать скрытые устройства >>> Драйверы несамонастраиваемых устройств >>> aksdf >>> Свойства >>> Драйвер >>> Остановить, то файл C:\Windows\Temp\TmpFile1 сразу же исчезает, но при включении драйвера он сразу же появляется опять.

Так же, когда у меня стоял Kaspersky Cristal, какой-то один из его драйверов так же создавал в папке C:\Windows\Temp какие-то файлы, которые так же удалить, переместить, переименовать было невозможно, которые так же сами исчезали после отключения драйвера и появлялись после включения.

Вот и основной вопрос: «Как программно, не «методом тыка», не «гуглением», а средствами Windows, определить, каким процессом занят файл, если этим процессом является драйвер?»

Всего записей: 125 | Зарегистр. 08-01-2013 | Отправлено: 15:40 29-11-2016 | Исправлено: aleksey1965, 15:41 29-11-2016
aleksey1965

Junior Member

Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Вроде нашел путь, как это сделать, с помощью Вадима Стеркина и его советов:

Драйвер – это системный процесс, и сторонних утилит, способных копаться в системных процессах, практически нет. Помочь моли бы Microsoft (а оно ей надо) или Марк Руссинович, и его утилита Process Monitor.

Если коротко, то методика такая:
— Ставим фильтр на путь: C:\Windows\Temp\TmpFile1
— Ставим галочку Enable Boot Logging (Включить лог загрузки)
— Указываем путь сохранения лога
— Перезагружаемся
— Исследуем загрузочный лог

Файл занят другой программой: что делать? Компьютер для новичков

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

Почему файловые объекты могут использоваться одновременно?

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

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

Простейшие примеры одновременного доступа к файлам

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

Пользователь поставил контент на загрузку, но забыл об этом и пытается удалить исходный торрент-файл. Естественно, что система и сообщает ему, что файл занят другой программой. Что делать в этом случае? Для начала нужно либо дождаться окончания загрузки, либо завершить ее досрочно. После этого оригинальный объект или частично загруженное содержимое можно будет безболезненно удалить.

Нередко можно встретить и ситуации, когда пользователем производится редактирование одного и того же офисного документа в разных приложениях. Предположите, что вы открыли текстовый документ в Word Pad. Эта программа является большей частью только просмотрщиком и полноценное редактирование содержимого производить не позволяет. Естественно, пользователь тут же открывает документ в «Ворде», забывая закрыть Word Pad, вносит изменения, а при попытке сохранения получает сообщение о том, что файл занят другой программой. Что делать, думается, уже понятно. Закрыть первую программу, после чего сохранение станет доступным.

Несколько хуже выглядит ситуация с использованием драйверов устройств, особенно если они виртуальные. Например, у вас есть программный плеер Kontakt, который установлен в системе не только в виде плагина форматов VST или RTAS, но и в качестве Standalone-приложения (работающего независимо от подключаемого хоста). Вы открываете в нем какой-то сэмпл, а после этого запускаете такой-же плагин в DAW-студии и пытаетесь загрузить его уже в VST-версию плеера. Понятно, что в одной из программ вы и получите ошибку. В частности, тут проблема состоит в том, что и студия, и плеер, одновременно не могут обращаться к драйверам ASIO4ALL. И снова появится сообщение о том, что файл занят другой программой. Как открыть такое содержимое? Опять же решение на поверхности – завершить одно из приложений. Но это только самые простые ситуации, какие можно встретить. Теперь посмотрим, как их исправить и устранить возникающие ошибки.

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

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

В случае с пользовательскими данными ничего страшного в перезагрузке не будет. Как перезагрузить компьютер? Элементарно! Даже принудительный рестарт не потребуется. Просто выполните стандартную перезагрузку через меню «Пуск» или через «Диспетчер задач» (можно даже без завершения активных процессов).

Файл занят другой программой (Windows 10): как завершить блокирующие процессы?

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

Если же пользователь и понятия не имеет, какими именно приложениями занят файл, лучше воспользоваться утилитой Process Explorer, разработанной корпорацией Microsoft (скачать ее можно прямо на официальном ресурсе компании).

Что делать, если файлы не удаляются?

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

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

Права доступа

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

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

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

Краткие итоги

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • c:\Program Files\SysinternalsSuite>handle.exe |findstr /i e:\ — найти все файлы, открытые с диска E:
  • c:\Program Files\SysinternalsSuite>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».

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

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

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

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

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

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

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

Читайте также:  Default user windows server
Оцените статью