Der Befehl zum Erstellen eines Verzeichnisses lautet, wie allgemein bekannt: MkDir (MakeDir). Mit diesem Befehl lässt sich aber nur genau ein Verzeichnis erstellen, d.h. soll z.B. ein Verzeichnis innerhalb eines anderen Verzeichnisses erstellt werden, wobei das übergeordnete Verzeichnis noch nicht existiert, so erhalten Sie beim Versuch das Verzeichnis per MkDir zu erstellen einen Laufzeitfehler. Die nachfolgende Funktion schafft Abhilfe. Übergeben Sie der Funktion das zu erstellende Verzeichnis bzw. den zu erstellenden Verzeichnispfad und geben optional an, ob ein Hinweis erscheinen soll, sollte ein Fehler auftreten (z.B. wenn Sie nicht die benötigten Rechte zum Erstellen des Verzeichnisses besitzen). Die Vorgehensweise der Funktion ist wie folgt: War der Funktionsaufruf erfolgreich, so wird True zurückgegeben, andernfalls False. ' Verschaltete Verzeichnisse erstellen Public Function MakePath(ByVal sPath As String, _ Optional ByVal ShowMsg As Variant) As Boolean Dim antwort As Integer Dim Dummy As String If IsMissing(ShowMsg) Then ShowMsg = False antwort = 0: Err = 0 Dummy = "" On Local Error Resume Next While Len(sPath) > 0 And antwort = 0 If Left$(sPath, 2) = "\\" Then Dummy = Dummy + "\\" sPath = Mid$(sPath, 3) ElseIf left$(sPath, 1) = "\" Then Dummy = Dummy + "\" sPath = Mid$(sPath, 2) ElseIf Mid$(sPath, 2, 2) = ":\" Then Dummy = Dummy + left$(sPath, 3) sPath = Mid$(sPath, 4) End If While left$(sPath, 1) <> "\" And Len(sPath) > 0 Dummy = Dummy + left$(sPath, 1) sPath = Mid$(sPath, 2) Wend Err = 0 MkDir Dummy If Err <> 75 And Err <> 0 Then If ShowMsg Then antwort = MsgBox("Fehler beim Erstellen " & _ "des Verzeichnisses!" + vbCrLf + 48, "Fehler") Else antwort = 1 End If End If Wend On Local Error GoTo 0 MakePath = (antwort = 0) End Function Beispielsaufruf: MakePath "c:\visual basic\myProjekte\test"
Das obige Beispiel erstellt demnach alle übergeordneten Verzeichnisse (visual basic und myprojekte), falls diese noch nicht existieren. Erst dann wird das Verzeichnis "test" erstellt. Dieser Tipp wurde bereits 16.684 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung sevZIP40 Pro DLL Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |