Как запретить открытие файлов в системе?

Как запретить открытие файлов в системе?

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

Файл создается во временной папке (userfolder\AppData\Local\Temp). Я могу переместить его куда угодно, могу переименовать, но не могу удалить.

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

Когда я пытаюсь удалить один из них, я получаю следующее сообщение:

Действие не может быть завершено, так как файл открыт в системе

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

Я пытался:

  • Назначить себя владельцем файлов (изначально они принадлежат Системе);
  • Назначение разрешений другим учетным записям пользователей, включая «Все», и обеспечение того, чтобы у всех из них были разрешения на удаление файлов;
  • Удаление всех атрибутов файла;
  • Перезагрузка, как уже упоминалось выше. Я даже делал это несколько раз;
  • Изменение не только имен файлов, но и расширений;
  • Unlocker (программа, которая обещает решить подобные проблемы, но мне она не помогла);
  • Прохожу через командную строку. Там просто написано access denied.

Что еще я могу попробовать? Как мне запретить процессу System открывать эти файлы, чтобы я мог избавиться от них?

решение1

Хороший список идей. Другие более экстремальные вещи, которые можно попробовать:

  • Загрузитесь в безопасном режиме
  • Смонтировать диск на другой машине

Вы можете использоватьProcessExplorerчтобы увидеть, какой процесс (если таковой имеется) имеет доступ к файлу:

  • Ctrl+L (показать нижнюю панель)
  • В нижней панели нажмите Ctrl+F для имени файла.

Связанный контент