148 читали · 1 год назад
Файл занят другим процессом, заблокирован другим процессом или открыт в другой программе — простое решение
Распространенная проблема при попытке удалить, переименовать, переместить или изменить файл или папку — сообщение о том, что процесс не может получить доступ к файлу, так как этот файл занят другим процессом, о том, что папка или файл открыты в другой программе и аналогичные. File Locksmith — новая функция Microsoft PowerToys для разблокировки файлов Заблокированный другим процессом файл или папка — типичная ситуация, при этом Windows не всегда сообщает пользователю, о каком именно процессе идёт речь...
❓Обращали внимание, что в свойствах файлов скачанных из Интернета есть предупреждение о том, что файл был получен с другого компьютера. Причём такое предупреждение выводится не только для исполняемых файлов и скриптов, но и простых текстовых документов, картинок, аудио и других, казалось бы нейтральных, типов файлов. Ни переименование, ни перемещение файла на очищает эту метку. 📚 Дело в том, что файлы, которые скачиваются с помощью браузера и сохраняются на NTFS том, получают особый идентификатор, хранящийся в альтернативном потоке NTFS (Alternate Data Streams). Все популярные браузеры поддерживают этот механизм и проставляют для полученных из интерната файлов метку Zone.Identifier. Ее значение можно посмотреть с помощью блокнота: notepad.exe a-ha-lifelines.mp3:zone.identifier или с помощью PowerShell. Get-Content -Path a-ha-lifelines.mp3 -Stream Zone.Identifier Мы получим такой идентификатор зоны передачи: [ZoneTransfer] ZoneId=3 🔹 Причем в метке могут присутствовать и другие данные. В моем случае это ссылки на сайт, с которого я скачал MP3 файл. Проводник и большинство других приложений работают только со стандартным потоком и не отображают данные из альтернативных потоков NTFS. В альтернативный поток данных можно спрятать что угодно, причем размер данных в альтернативном потоке может превышать размер основного файла! 🔹 Параметр ZoneId может принимать пять значений от 0 до 4. Когда пользователь загружает файл, браузер автоматически определяет зону безопасности и ставит ему соответствующую этой зоне метку. Зона безопасности 3 используется для сайтов в Интернете. Чтобы очистить метку альтернативного потока данных, нужно нажать кнопку Разблокировать в свойствах файла или очистить ее с помощью PowerShell: Unblock-File a-ha-lifelines.mp3 Как Windows определяет, что файл был скачан из Интернета