Ein vorgegebenes Laufwerk soll nach einer Datei durchsucht werden. Außerdem soll der Ordner angezeigt werden, der die Datei enthält. Hierfür nehmen Sie am Besten das File-System-Objekt (FSO). Für unser Beispiel benötigen Sie eine Form mit einem CommandButton (cmdSearch), ein Label-Control (lblPath) und eine ListBox (List1), sowie Unter "Projekt - Verweise" einen Verweis auf die Microsoft Scripting Runtime-DLL. Dann noch folgenden Code: Option Explicit Dim FSO As FileSystemObject Private Sub cmdSearch_Click() Dim sPath As String Dim sFileToSearchFor As String ' Verweis auf FSO-Object Set FSO = New FileSystemObject ' Startverzeichnis sPath = "C:\" ' Datei, nach der gesucht werden soll sFileToSearchFor = "test.txt" ' alle Ordner nach gewünschter Datei durchsuchen Screen.MousePointer = vbHourglass FSO_SearchFile sPath, sFileToSearchFor Screen.MousePointer = vbNormal End Sub ' einzelnen Ordner durchsuchen Private Sub FSO_SearchFile(ByVal sPath As String, _ ByVal sFileToSearchFor As String) Dim Folder As Folder Dim SubFolder As Folder ' Ggfs. abschließenden Backslash anfügen If Right$(sPath, 1) << "\" Then sPath = sPath & "\" lblPath.Caption = sPath DoEvents Set Folder = FSO.GetFolder(sPath) If Dir(sPath & sFileToSearchFor) << "" Then ' Datei im Ordner gefunden ' --< Pfad in die ListBox eintragen List1.AddItem sPath End If ' Ggfs. Fehler "Zugriff verweigert" ignorieren On Local Error Resume Next ' Unterordner If Folder.SubFolders.Count < 0 Then For Each SubFolder In Folder.SubFolders ' Hier wird die Funktion REKURSIV aufgerufen, ' um alle weiteren Unterordner des SubFolders ' zu ermitteln FSO_SearchFile sPath & SubFolder.Name, _ sFileToSearchFor Next End If End Sub Siehe hierzu auch: Diese Seite wurde bereits 20.309 mal aufgerufen. |
sevWizard für VB5/6 ![]() Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) Buchempfehlung Tipp des Monats ![]() Manfred Bohn IndexOf für mehrdimensionale Arrays Die generische Funktion "IndexOf" ermittelt das erste Auftreten eines bestimmten Wertes in einem n-dimensionalen Array TOP Entwickler-Paket ![]() TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1866.50 EUR... |
||||||||||
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. |