Rubrik: Dateisystem · Ordner & Verzeichnisse | VB-Versionen: VB6 | 23.07.08 |
MakeDirectory - Verzeichnis beliebiger Tiefe erzeugen Mit dieser Funktion lassen sich mit einem einzigen Aufruf auch geschachtelter Verzeichnis mehrere Ebenen erstellen. | ||
Autor: Johannes Braunias | Bewertung: | Views: 12.376 |
ohne Homepage | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Mit der "normalen" MKDir-Funktion von VB lassen sich bekanntlich keine geschachtelten Verzeichnisse mehrere Ebenen erstellen.
Für diesen Zweck können Sie ab sofort nachfolgende Funktion MakeDirectory verwenden.
Public Function MakeDirectory(ByVal sPath As String, _ Optional ByVal blnRaiseError As Boolean = True) As Boolean ' Fehlerbehandlung akttivieren On Error GoTo ErrorHandler Dim sTempPath As String Dim i As Integer ' ggf. abschl. Backslash anfügen If Right$(sPath, 1) <> "\" Then sPath = sPath & "\" ' Teilpfade Dim sPart() As String sPart = Split(sPath, "\") ' jetzt alle Pfade durchlaufen For i = LBound(sPart) To UBound(sPart) - 1 ' Pfad zusammensetzen sTempPath = sTempPath & sPart(i) & "\" ' Falls das Verzeichnis noch nicht existiert... If Len(Dir(sTempPath, vbDirectory)) = 0 Then ' ...jetzt erstellen MkDir sTempPath End If Next i MakeDirectory = True Exit Function ErrorHandler: If blnRaiseError Then Err.Raise Err.Number, Source:="MakeDirectory:", _ Description:="Unerwartete Ausnahme bei der Verzeichniserstellung: " & sPath End If End Function