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

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

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

Я открыл папку и попытался удалить steam.exe вручную, но Windows утверждал, что у меня не было разрешения. Моя учетная запись является учетной записью администратора и единственной учетной записью пользователя на этом компьютере. Но на всякий случай я запустил Explorer от имени администратора, но все равно не смог удалить файл. Я поднял свойства файла на вкладку "Безопасность", но он показал только сообщение о том, что у меня нет разрешения на просмотр разрешений.

затем, я поднял Процесс Explorer ли что-нибудь блокировку на файл. SYSTEM (PID 4) сделал, но когда я попытался закрыть дескриптор файла, он вызвал ошибку, заявив, что дескриптор недействителен. Я попытался просмотреть свойства дескриптора файла,но у меня не было разрешения на это.

Я прекратил все, кроме не прекращаемых системных процессов, и остановил все службы, которые я могу, включая все, что связано с AV и брандмауэром, но проблема продолжает появляться. Я попытался использовать "takeown", чтобы дать себе право собственности на файл, но он утверждает, что у меня нет разрешения на это. Другие люди утверждали, успех с помощью инструмента под названием "Unlocker", но он имел ту же проблему, как Process Explorer в закрытии дескриптора файла.

Я давно отключил индексацию и поиск Windows, и исключил C: из индексации, поэтому ответ на этот вопрос не относится ко мне.

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

мой вопрос: почему эти ручки висят вокруг, и как я могу их предотвратить?

Edit: вот дополнительная информация по запросу из комментариев:

C:>fltmc instances
Filter                Volume Name                              Altitude        Instance Name      Frame  VlStatus
--------------------  -------------------------------------  ------------  ---------------------  -----  --------
KLIF                  DeviceMup                             320400       KLIF                     0
KLIF                  C:                                      320400       KLIF                     0
KLIF                                                          320400       KLIF                     0
luafv                 C:                                      135000       luafv                    0
FileInfo              DeviceMup                              45000       FileInfo                 0
FileInfo              C:                                       45000       FileInfo                 0
FileInfo                                                       45000       FileInfo                 0

Edit: GMER указывает, что мой антивирус (Kaspersky) все еще активен каким-то образом, несмотря на отключение его из собственного графического интерфейса, и его служба остановлена.

AttachedDevice  Drivertdx DeviceIp     kl1.sys (Kaspersky Unified Driver/Kaspersky Lab ZAO)
AttachedDevice  Drivertdx DeviceTcp    kl1.sys (Kaspersky Unified Driver/Kaspersky Lab ZAO)
AttachedDevice  Drivertdx DeviceUdp    kl1.sys (Kaspersky Unified Driver/Kaspersky Lab ZAO)
AttachedDevice  Drivertdx DeviceRawIp  kl1.sys (Kaspersky Unified Driver/Kaspersky Lab ZAO)

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

Edit: я отключил фильтр Kaspersky KLIF, но проблема блокировки остается.

Edit: я решил конкретная проблема с Steam путем установки, принудительного завершения установки, прежде чем он сможет запустить steam.exe, затем перезапустить в безопасном режиме и запустить его там. Таким образом, по-видимому, все, что блокирует исполняемый файл, отсутствует в безопасном режиме.

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

7
задан Community
03.04.2023 0:56 Количество просмотров материала 2374
Распечатать страницу

5 ответов

сделать следующее:

  1. отключить индексирование проблемного местоположения.

  2. включить "приложений" и установите его в положение "автомат".

вот и все.

Если ваша проблема все еще сохраняется, это может быть Superfetch, хотя отключение, что не принесло мне удачи.

20
отвечен Kevin 2023-04-04 08:44

KLIF-драйвер Kaspersky AV. Скорее всего, это как-то связано с этим.

мой ход действий в таком случае будет обратиться Касперского и спросить совета.

однако, есть еще одна вещь, которую вы можете попробовать сначала: отключить драйвер (под HKLM\SYSTEM\CurrentControlSet\Services) искать KLIF или что-то подобное как имя ключа и задание REG_DWORD значение имени Start to 4 (что означает отключено), затем перезагрузка. Это должно предотвратить драйвер фильтра KAV от нагруженный. Затем вы можете использовать fltmc чтобы проверить результат.

вывод из GMER, который вы дали, не имеет значения для рассматриваемого случая, поскольку он будет влиять только на сетевые соединения, а не на файловые операции. Кажется, у вас было что-то вроде Kaspersky Internet Security установлен (или до сих пор он бездействует на вашей машине).

изменить: просто FYI luafv отвечает за виртуализацию FS совместно с UAC. Т. е. если у вас нет доступа к файл его в отдельная папка внутри вашего профиля. FileInfo принадлежит SuperFetch - который на самом деле может быть частью вашей проблемы, но у меня не было подобной проблемы на Windows 7 себя. Как правило, не рекомендуется отключать SuperFetch, хотя можно.

5
отвечен 0xC0000022L 2023-04-04 11:01

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

1
отвечен David K 2023-04-04 13:18

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

  1. использовать дескриптор чтобы узнать, какой процесс держит файл
  2. (в моем случае это была система)
  3. попробуйте закрыть ручку:handle.exe -c E14 -p 4. Дескриптор файла будет найден в результатах поиска дескриптора файла, и processid, скорее всего, будет таким же для system.
  4. производительность Error closing handle: T
  5. погуглите это, я нашел это связано с сетью
  6. я нашел на другой машине, я на самом деле есть папка открыта. Закрыть его. Все благо.
1
отвечен Todd 2023-04-04 15:35

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

0
отвечен BlackICE 2023-04-04 17:52

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх