![]() |
TdfFindFile - Komponente um Dateien rekursiv zu suchen
![]() Diese Komponente wurde von Howard Harvey entwickelt, dann von Marcus Luk erweitert und verbessert und ich habe zu guter Letzt alle geschwindigkeitsraubenden Funktionen durch schnellst mögliche ersetzt und hie und da etwas erweitert. So dauert das Sortieren von ein paar 100.000 Dateien nach Dateigröße nur einen Bruchteil von Sekunden (dank QuickSort) und die verschiedenen Filter werden mittels Binärer Suche überprüft. Um beispielsweise alle JPEGs, BMPs, GIFs und PNGs auf meiner Festplatte (ca. 80.000 Dateien) zu finden und nach Größe zu sortieren, werden nicht einmal 10 Sekunden benötigt. Alle weiteren Informationen und die Dokumentation (leider nur in Englisch) sind im Archiv enthalten. ![]() ![]() Gruß Daniel Bitte mailt mir eure Erfahrungen mit dieser Komponente. ps: Damit das Programm während einer langen Suche nicht "einfriert", empfehle ich ähnlichen Code in das OnNewPath-Ereignis zu schreiben:
Code:
if (gettickcount - oldtime)>100 then begin
application.ProcessMessages; label1.Caption := NewPath; oldtime := gettickcount; end; |
DP-Maintenance
Dieses Thema wurde von "Chakotay1308" von "Neuen Beitrag zur Code-Library hinzufügen" nach "Open-Source" verschoben.
Ist wohl eher was für OpenSource |
Re: TdfFindFile - Komponente um Dateien rekursiv zu suchen
klingt sehr interresant, nur eine frage: kann man damit auch nur verzeichnisse auflisten?
|
Re: TdfFindFile - Komponente um Dateien rekursiv zu suchen
Hi,
kompliment, das Ding ist wirklich extrem flott! Gruß, Kastor |
Re: TdfFindFile - Komponente um Dateien rekursiv zu suchen
Vielen vielen Dank für diese geniale Komponente :thumb:
|
Re: TdfFindFile - Komponente um Dateien rekursiv zu suchen
Die Komponent ist nicht schlecht, allerdings isses bissl übertrieben für die Auflistung von Dateien gleich ne Komponente zu nehmen, dadurch wird ja erst ne stringlist etc. initialisiert was das ganze nur ausbremst. Aber für Anfänger die mit dem Findfirst etc. nicht klar kommen isses ok...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz