Getdirectories und Getfiles vb2008

DerStauner

Erfahrenes Mitglied
Ich habe folgendes Code:
Code:
filearray = folder.GetFiles("*.*", SearchOption.AllDirectories)

folderarray = folder.GetDirectories("*.*", SearchOption.AllDirectories)

Der User legt den Pfad fest, was man listen möchte, und das Programm sucht den Folder und seine Unterfolder nach allen Folder- und Filenamen durch. Aber bei einigen tausend Foldern oder Files kann es dauern. Und das möchte ich mit einem Progressbar anzeigen. Dazu muss ich das Progressbar skalieren und pro Folder oder Unterfolder bzw. Files das Value des Progressbars erhöhen. Das Erhöhen ist kein Problem, aber wie skaliere ich das Progressbar Wie sage ich dem Progressbar vor dem Starten, dass es z. b. 1340 Folder und Subfolder geben wird Das weiss man vor dem Starten doch nicht.
 
Hallo,

entweder lässt du die Progressbar hin- und herfahren wie man das von KITT kennt und symbolisierst dem Benutzer so, dass gerade etwas passiert, oder du erzählst uns, was dann genau mit den Verzeichnissen und den Dateien passieren soll. Eventuell ist es gar nicht notwendig, alles auf einmal einzulesen.
 
Eigentlich habe ich es so gelöst, dass während der Suche ein Label zeigt, dass jetzt gesucht wird, und den Mauscursor habe ich ins hourglass verwandelt.

Die Folder brauche ich zum mklink Dos-command. So werden alle Subdirectories gesammelt, und in einer For Each Schleife die Folder gelinkt.
 
Dann hol dir alle Verzeichnisse und Dateien. Dann hast du eine Zahl, mit der du die ProgressBar ansteuern kannst. Bis du diese Zahl hast, kannst du ja Hourglass als Mauszeiger verwenden.

Sobald die Daten da sind, kannst du deinen ProgressBar entsprechend konfigurieren und den Value entsprechend nach jedem Durchlauf setzen.
 
Zurück