Hoe blokkeer je een bestand in Windows om verwijderen of overschrijven te blokkeren?
Hoewel er veel programma's van derden zijn om een taak te volbrengen, wilt u soms gewoon een ingebouwde methode gebruiken om hetzelfde te doen. De SuperUser Q & A-post van vandaag helpt een lezer een geweldige ingebouwde oplossing te vinden om te voorkomen dat zijn bestanden worden verwijderd of overschreven.
De Question & Answer-sessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een gemeenschapsgedreven groep van Q & A-websites.
Screenshot van het Kladblok met dank aan Dan (SuperUser).
De vraag
SuperUser reader boboes wil weten of er een ingebouwde methode is in Windows 7 en nieuwere versies om een bestand te vergrendelen en te voorkomen dat het wordt overschreven of verwijderd:
Is er een manier om een bestand met interne middelen te vergrendelen zodat het niet kan worden verwijderd of overschreven? Ik moet bestanden tijdelijk vergrendelen tijdens het testen van kopieerscripts om de foutafhandeling in die scripts te controleren. Tot Windows XP laadde ik een bestand in debug.exe om het te vergrendelen. Is er een manier om dit te doen in Windows 7 en nieuwere edities?
Ik weet dat er programma's zijn om dit te doen. Mijn vraag is of er een ingebouwd mechanisme is in Windows 7 en nieuwere edities. Soms moet ik een script op een pc controleren en daarvoor geen nieuwe programma's installeren.
Er zijn ook enkele goede suggesties: hoe kan een exclusief bestand een bestand worden vergrendeld? Helaas hebben ze hulpprogramma's van externe partijen nodig of moet het bestand in een vergrendelde staat worden gewijzigd.
Is er een ingebouwde methode om dit te doen in Windows 7 en nieuwere edities?
Het antwoord
SuperUser-bijdragers Dan en Breakthrough hebben het antwoord voor ons. Eerst op, Dan:
Ik denk dat PowerShell waarschijnlijk de meest nette manier is om dit te bereiken. Iets als het volgende:
In de pauzestand veroorzaakt het bovenstaande script de volgende prompt bij het openen van "myfile.txt":
Gevolgd door het antwoord van Breakthrough:
Voor de nieuwsgierigen is hier de MSDN-link naar de File :: Open-methode die de parameters van de aanroep beschrijft (met name het laatste argument 'Geen', weigert het bestand te delen met andere threads / processen). Evenzo bestaan er voorzieningen om het bestand te vergrendelen voor alleen lezen / schrijven, of een combinatie daarvan.
Heb je iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden van andere technisch onderlegde Stack Exchange-gebruikers lezen? Bekijk hier de volledige discussiethread.