Сегодняшняя сессия вопросов и ответов приходит к нам благодаря SuperUser - подразделению Stack Exchange, основанной на сообществах сайтам Q & A.
Скриншот Notepad предоставлен Dan (SuperUser).
Вопрос
Бобы читателей SuperUser хотят знать, есть ли встроенный метод в Windows 7 и более поздних версиях для блокировки файла и не перезаписывать его или удалять:
Is there a way to lock a file with in-house means so that it cannot be deleted or overwritten? I need to temporarily lock files while testing copy scripts in order to check the error handling in those scripts. Until Windows XP, I would load a file in debug.exe to lock it. Is there a way to do this in Windows 7 and newer editions?
I know that there are programs for doing this. My question is if there is a built in mechanism in Windows 7 and newer editions. Sometimes I have to check a script on a PC and do not want to install new programs for that.
There are also some good suggestions here: How to purposefully exclusively lock a file? Unfortunately, they require 3rd party tools or changing the file to a locked state.
Есть ли встроенный метод для этого в Windows 7 и более новых версиях?
Ответ
Ответы для разработчиков SuperUser Дэн и прорыв дают нам ответ. Сначала, Дэн:
I think PowerShell is probably the neatest way to accomplish this. Something like the following:
Вслед за ответом от прорыва:
For the curious, here is the MSDN link to the File::Open method detailing the parameters of the call (specifically, the last argument ‘None’, declines sharing the file with any other threads/processes). Likewise, provisions exist to lock the file for read/write only, or a combination thereof.
Есть что добавить к объяснению? Отключить звук в комментариях. Хотите узнать больше ответов от других пользователей Windows? Посмотрите здесь полную дискуссионную тему.