/ / Hur låser du en fil i Windows för att blockera radering eller överskrivning?

Hur låser du en fil i Windows för att blockera radering eller överskrivning?

how-do-you-lock-a-fil-in-fönster till block skriva över-eller-radering-00

Även om det finns gott om tredjepartsprogram attutföra en uppgift, ibland vill du bara använda en inbyggd metod för att göra samma sak. Dagens SuperUser Q & A-inlägg hjälper en läsare att hitta en fantastisk inbyggd lösning för att förhindra att hans filer raderas eller skrivs över.

Dagens fråga & svar-session kommer till oss med tillstånd av SuperUser - en underavdelning av Stack Exchange, en samhällsstyrd gruppering av frågor och svar på webbplatser.

Notepad-skärmdump med tillstånd av Dan (SuperUser).

Frågan

SuperUser-läsarboboes vill veta om det finns en inbyggd metod i Windows 7 och nyare utgåvor för att låsa en fil och förhindra att den skrivs över eller raderas:

Finns det ett sätt att låsa en fil med interna medelså att det inte kan raderas eller skrivas över? Jag måste tillfälligt låsa filer när jag testar kopieringsskript för att kontrollera felhanteringen i dessa skript. Till Windows XP laddade jag en fil i debug.exe för att låsa den. Finns det ett sätt att göra detta i Windows 7 och nyare utgåvor?

Jag vet att det finns program för att göra detta. Min fråga är om det finns en inbyggd mekanism i Windows 7 och nyare utgåvor. Ibland måste jag kontrollera ett skript på en dator och inte vill installera nya program för det.

Det finns också några bra förslag här: Hur kan jag medvetet uteslutande låsa en fil? Tyvärr kräver de tredjepartsverktyg eller ändrar filen till ett låst tillstånd.

Finns det en inbyggd metod för att göra detta i Windows 7 och nyare utgåvor?

Svaret

SuperUser-bidragsgivare Dan och Breakthrough har svaret för oss. Först upp, Dan:

Jag tror att PowerShell förmodligen är det snyggaste sättet att göra detta. Något som följande:

how-do-you-lock-a-fil-in-fönster till block skriva över-eller-radering-01

Med paus orsakar ovanstående skript följande meddelande när du försöker öppna "myfile.txt":

how-do-you-lock-a-fil-in-fönster till block skriva över-eller-radering-02

Följt av svaret från genombrott:

För de nyfikna är här MSDN-länken tillFil :: Öppna metod som anger parametrarna för samtalet (specifikt det sista argumentet 'Ingen', avvisar att filen delas med andra trådar / processer). Likaså finns det bestämmelser för att låsa filen endast för läsning / skrivning eller en kombination därav.


Har något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa fler svar från andra tekniska kunniga Stack Exchange-användare? Kolla in hela diskussionstråden här.