Как заблокировать файл в Windows без его изменения или использования сторонних инструментов?

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

Для тестирования сценариев копирования мне нужно lock files temporarily чтобы проверить обработку ошибок в скриптах. До XP я использовал загрузку файла в debug.exe, чтобы заблокировать его.

Есть ли способ в Windows 7 (и позже)?

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

Edit2
Вот также хорошие предложения: как целенаправленно блокировать файл? , Которые, однако, нуждаются в сторонних инструментах или изменяют файл для блокировки.

  • Запуск MySQL из командной строки без потери подсказки
  • Есть ли альтернатива использованию intellipoint?
  • Где я могу найти файл boot.ini в Windows 7?
  • ASUS UX31A - отсутствует требуемый драйвер устройства привода CD / DVD
  • Получено недостаточно сообщений о привилегиях в CMD при входе в систему как администратор
  • Можно ли удалить BSOD?
  • Я случайно подключил USB-мышь к своему порту eSata ... он работает?
  • Будет ли установка окон форматировать диск?
  • 5 Solutions collect form web for “Как заблокировать файл в Windows без его изменения или использования сторонних инструментов?”

    Я думаю, что PowerShell, вероятно, самый опрятный способ добиться этого. Что-то вроде следующего:

     #Specify the file name $fileName = "C:\myfile.txt" #Open the file in read only mode, without sharing (Ie, locked as requested) $file = [System.io.File]::Open($fileName, 'Open', 'Read', 'None') #Wait in the above (file locked) state until the user presses a key Write-Host "Press any key to continue ..." $null = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") #Close the file (This releases the current handle and unlocks the file) $file.Close() 

    При приостановке приведенного выше сценария вызывает следующее приглашение при попытке открыть файл «myfile.txt»:

    Введите описание изображения здесь

    Поскольку мне не нравится устанавливать программное обеспечение, которое я фактически не использую, я нашел эту драгоценность VBScript:

     Const ForAppending = 8 Set oFSO = CreateObject("Scripting.FileSystemObject") Set f = oFSO.OpenTextFile("C:\Tst\My2.txt", ForAppending, True) MsgBox "Press OK to unlock the file(s)" 

    Весь кредит принадлежит Торгейру Баккену, вы можете увидеть полный пост здесь: http://www.pcreview.co.uk/threads/how-to-lock-files.1518829/

    Не можете ли вы пометить его как только для чтения? Это эффективно блокирует файл, не позволяя его изменять или удалять.

    Команда attrib.exe доступна в командной строке и позволит вам установить файл или каталог только для чтения. Более подробную информацию об этой команде можно найти здесь

    И наоборот, вы можете сделать то же самое через GUI, щелкнув правой кнопкой мыши файл или каталог, который вы хотите пометить только для чтения, выбрав свойства и отметьте поле «Только для чтения». При нажатии Apply / Ok применяется новый параметр к файлу или каталогу.

    Невозможно ли ограничить доступ к файлу вкладкой «Безопасность», когда вы щелкните правой кнопкой мыши и перейдите в «Свойства для файла или папки»?

    Если у пользователя есть доступ администратора к ПК, то это не позволит ему удалить все остальные возможности что-либо делать с файлом / папкой?

    Я должен признать, что мой рабочий компьютер все еще находится на WinXP Pro, поэтому вышеизложенное может быть недоступно – мне все еще не так удобно с моей новой камерой Win 8.1 Pro дома, поскольку я с ней Лет работы с Win XP

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

    Давайте будем гением компьютера.