vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Rekursives durchgehen aller Unterordner 
Autor: Binthom
Datum: 02.11.06 21:56

Hallo liebe Forums-Community!

Ich habe mir ein Modul zusammengebaut mit einem Sub, der einen angegebenen Ordner und all seine Unterordner durchforstet und bei bedarf dateien überprüft und sie in einer List ausgibt sowie die Anzahl aller Dateien ausgibt und beim Canceln aller Dateien, die ein "Match" darstellen/zum such-Muster passen ... o.ä. ausgibt in ein label..... nunja schön und gut... funktioniert ja auch alles aber ich würde gerne errechen, dass das durchlaufen aller dateien nicht einfach aufhört und der benutzer nie erfährt, ob da nur der rechner hängt oder der vorgang beendet wurde, sondern, dass einfach nach der letzten datei (also wenns nichtsmehr an ordnern und dateien zudurchlaufen gibt) ein bestimmter sub ausgeführt wird.
ich hoffe ihr versteht was ich meine. also sobald er alle ordner und dateien in den unterverzeichnisse durchgangen hat solle ein sub ausgeführt/aufgerufen werden....

hier der code des moduls:

Dim Aktiv As Boolean
Dim countDateien As Long
 
Public Function Aus(zForm As Form)
Aktiv = False
Aus = countDateien
End Function
 
 
 
 
 
 
Public Sub Ein(strPfad As String, outList As ListBox, outLabel As Label, _
  outNumber As Label)
Set fs = CreateObject("Scripting.FileSystemObject")
If fs.FolderExists(strPfad) = False Then Exit Sub
 
Aktiv = True
countDateien = 0
outNumber = 0
 
Suchen strPfad, outList, outLabel, outNumber
End Sub
 
 
 
 
 
Private Sub Suchen(strPfad As String, outList As ListBox, outLabel As Label, _
  outNumber As Label)
On Error Resume Next
Set fs = CreateObject("Scripting.FileSystemObject")
 
If fs.FolderExists(strPfad) = False Then Exit Sub
Set FolderObject = fs.GetFolder(strPfad)
 
outLabel.Caption = Pfad.PfadKürzen(strPfad, 70)
DoEvents
 
For Each Datei In FolderObject.Files
If Aktiv = False Then Exit Sub
    'hier müsste dan noch eine bedingung rein:
    'outList.AddItem Datei.Path
countDateien = countDateien + 1
'...ende der bedingung
outNumber = outNumber + 1
Next
 
For Each strUnterOrdner In FolderObject.SubFolders
If Aktiv = False Then Exit Sub
Suchen strUnterOrdner.Path, outList, outLabel, outNumber
Next
 
End Sub
 
'Dieser Sub solte dann (sobald alle Ordner durchgangen wurden) aufgerufen 
' werden (Call)
Private Sub Suchlauf_Fertig ()
[................]
End Sub
Würde mich sehr freuen, wenn mir geholfen werden könnte

Liebe Grüße
Marco (alias Binthom)
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Rekursives durchgehen aller Unterordner840Binthom02.11.06 21:56
Re: Rekursives durchgehen aller Unterordner403BAStler03.11.06 08:08
Re: Rekursives durchgehen aller Unterordner382Binthom03.11.06 11:45

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
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.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel