Действительно, какое-то вуду.
Купил новый загрузочный диск, и пришло время использовать старый диск для данных. Я подумал, что сэкономлю немного времени, просто удалив ненужные системные папки, вместо того, чтобы делать резервную копию, форматировать и восстанавливать. Упс!
У меня есть один файл Adobe, который совершенно не подлежит удалению. G:\Windows\SysWOW64\Macromed\Flash\flash9.ocx - хотя он мог начаться с другого имени файла. Я могу его переименовать, как ни странно.
Для ясности, диск в данный момент подключен извне. Так что я могу загрузить компьютер, подключить этот диск и немедленно попытаться удалить. В поле «Файл используется» написано «действие не может быть завершено, так как файл открыт в другой программе».
Я бы отформатировал его на этом этапе, но это мой белый кит, и мне нужно знать, не вставила ли Adobe какой-нибудь противный маленький хак реестра (или что-то в этом роде), делающий это невозможным.
Поскольку я уверен, что он всплывет, я стал владельцем файла (и это был трюк, который не позволял мне удалить что-либо еще на диске) — полные права на разрешения файла, что угодно, я повозился с самим файлом.
Я собираюсь попробовать удалить флэшку с системного диска, на случай, если это правильно выровняет планеты. Иногда мне хочется быть менее упрямым и просто отформатировать уже.
решение1
Как оказалось, в поле было несколько явных разрешений «запретить». Я забыл, что они переопределяют разрешения «разрешить». Избавился от них и смог удалить файл без проблем. Немного стыдно, что я не видел их раньше!
решение2
ИскатьРазблокировщик 1.9.1, небольшая удобная утилита для удаления файлов, которые не хотят удаляться... обычно они постоянно работают в памяти и не выполняют никаких полезных функций.
решение3
Ответ Кары правильный. Adobe прикрепила два запрета ACE к файлам:
DENY Everyone Write Attributes
DENY ANONYMOUS LOGIN Write Attributes
Удаление первого из них позволяет удалить файл. Второе в данном случае не имеет значения.
решение4
.ocx
Файлы похожи на .dll
's в том, что они являются компонентами, используемыми другими программами. Так что если эта другая программа открыта, она, скорее всего, считается "используемой" Windows.
Если у вас открыт Internet Explorer или другой браузер, это может быть причиной. Internet Explorer сам по себе состоит из ряда компонентов "COM", и возможно, другая программа использует такой компонент, который загружается в эту конкретную .ocx
. Звучит глупо, и было бы неплохо, если бы вы могли легко найти, какие компоненты принадлежат какой программе и какие из них в данный момент активны, но это Windows.
(Изменение: после более внимательного прочтения вашего вопроса я не думаю, что это связано с вашей проблемой. Скорее всего, это проблема с разрешениями. В любом случае, следующее по-прежнему применимо...)
Вы можете удалить его из безопасного режима. Вы определенно можете удалить его, загрузив Linux live CD или Windows PE CD и удалив его оттуда.
Поскольку реестр, особенно user.dat
его часть, содержит настройки учетной записи пользователя, вы можете быть уверены, что он открыт и «используется», пока вы вошли в систему. По какой-то причине он имеет тенденцию оставаться открытым после того, как вы вышли из системы большую часть времени (вероятно, из-за того, что какая-то программа забыла закрыть его перед завершением работы). Вы можете убить его, перезагрузив систему, войдя в другую учетную запись администратора и удалив его, не входя в эту учетную запись.