Gewusst wie: Ermitteln, ob ein Verzeichnis schreibgeschützt ist in Visual Basic
Aktualisiert: November 2007
Die My.Computer.FileSystem.GetDirectoryInfo-Methode-Methode gibt ein DirectoryInfo-Objekt mit einer Attributes-Eigenschaft zurück, die abgefragt werden kann, um Informationen über das Verzeichnis, z. B. ob dieses schreibgeschützt ist, zu ermitteln.
Hinweis: |
---|
Die in einem Dialogfeld verfügbaren Optionen sowie die Namen und Speicherorte der angezeigten Menübefehle können sich je nach den persönlichen aktiven Einstellungen oder der verwendeten Version von den in der Hilfe beschriebenen Optionen unterscheiden. Diese Hilfeseite wurde unter Berücksichtigung der Option Allgemeine Entwicklungseinstellungen geschrieben. Klicken Sie im Menü Extras auf Einstellungen importieren und exportieren, um die Einstellungen zu ändern. Weitere Informationen finden Sie unter Visual Studio-Einstellungen. |
So ermitteln Sie, ob ein Verzeichnis schreibgeschützt ist
Verwenden Sie die GetDirectoryInfo-Methode, um ein DirectoryInfo-Objekt für das angegebene Verzeichnis zurückzugeben. In diesem Beispiel wird ein DirectoryInfo-Objekt für das Verzeichnis TestDirectory zurückgegeben.
Dim reader As System.IO.DirectoryInfo reader = My.Computer.FileSystem.GetDirectoryInfo("C:\testDirectory")
Fragen Sie die Attributes-Eigenschaft des Objekts ab, um zu bestimmen, ob es schreibgeschützt ist.
If (reader.Attributes And System.IO.FileAttributes.ReadOnly) > 0 Then MsgBox("Directory is readonly!") End If
Beispiel
Im folgenden Beispiel, das den oben stehenden Ausschnitt in vollständiger Form darstellt, wird bestimmt, ob das Verzeichnis testDirectory schreibgeschützt ist, und das Ergebnis wird in einem Meldungsfeld ausgegeben.
Dim reader As System.IO.DirectoryInfo
reader = My.Computer.FileSystem.GetDirectoryInfo("C:\testDirectory")
If (reader.Attributes And System.IO.FileAttributes.ReadOnly) > 0 Then
MsgBox("File is readonly!")
End If
Kompilieren des Codes
Wenn das Verzeichnis nicht vorhanden ist, wird erst eine Ausnahme ausgelöst, wenn das erste Mal auf eine Eigenschaft im DirectoryInfo-Objekt zugegriffen wird.
Robuste Programmierung
Unter den folgenden Umständen können Ausnahmen auftreten:
Der Pfad ist aus einem der folgenden Gründe ungültig: Es handelt sich um eine Zeichenfolge der Länge 0, der Pfad enthält nur Leerzeichen, er enthält ungültige Zeichen, oder es handelt sich um einen Gerätepfad (beginnt mit \\.\) (ArgumentException).
Der Pfad ist ungültig, da er Nothing ist (ArgumentNullException).
Der Pfad überschreitet die im System definierte maximale Länge (PathTooLongException).
Der Pfad eines Datei- oder Verzeichnisnamens enthält einen Doppelpunkt (:) oder hat ein ungültiges Format (NotSupportedException).
Dem Benutzer fehlen die erforderlichen Berechtigungen zum Anzeigen des Pfades (SecurityException).
Siehe auch
Aufgaben
Gewusst wie: Bestimmen der Attribute eines Verzeichnisses in Visual Basic