Rubrik: Dateisystem · Dateien - allgemein | VB-Versionen: VB.NET | 02.04.07 |
Datei-Schreibschutz prüfen und ggf. entfernen (.NET) Mit dieser Funktion lässt sich der Schreibschutz einer Datei entfernen. | ||
Autor: Dieter Otter | Bewertung: | Views: 33.192 |
www.tools4vb.de | System: WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Nachfolgende Funktion prüft, ob eine Datei schreibgeschützt ist und entfernt den Schreibschutz ggf. automatisch.
Imports System.IO ...
' Schreibschutz einer Datei entfernen, falls gesetzt Public Function RemoveWriteProtection(ByVal sFile As String) As Boolean Dim bResult As Boolean = True If Not File.Exists(sFile) Then ' Falls Datei nicht existiert... bResult = False Else ' aktuell gesetzte Datei-Attribute ermitteln Dim oInfo As New FileInfo(sFile) With oInfo Try If .Attributes And FileAttributes.ReadOnly Then ' Datei ist schreibgeschützt ' Jetzt Schreibschutz-Attribut entfernen .Attributes = .Attributes Xor FileAttributes.ReadOnly End If Catch ' Fehler beim Lesen/Setzen der Datei-Attribute bResult = False End Try End With End If Return bResult End Function
Die Funktion gibt den Wert "False" zurück, wenn die angegebene Datei nicht existiert oder beim Versuch den Schreibschutz zu entfernen ein Fehler aufgetreten ist. Ist die Datei nicht schreibgeschützt bzw. konnte der Schreibschutz entfernt werden, gibt die Funktion den Wert "True" zurück.
Aufrufbeispiel:
Dim sFile As String = "d:\temp\Daten.mdb" If RemoveWriteProtection(sFile) Then ' ... Else ' Datenbank nicht gefunden oder Fehler beim Versuch den ' Schreibschutz zu entfernen ' ... End If