AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Scan for Files mit der PPL

Ein Thema von Smiley · begonnen am 19. Jun 2020 · letzter Beitrag vom 19. Aug 2020
Antwort Antwort
Benutzerbild von Smiley
Smiley

Registriert seit: 9. Dez 2004
Ort: Gedern
210 Beiträge
 
Delphi 12 Athens
 
#1

AW: Scan for Files mit der PPL

  Alt 19. Jun 2020, 13:07
@himitsu Von diesen Listenfunktionen habe ich noch nichts gelesen, kannst Du das näher beschreiben.

Dass der Einwand kommt, dass es nicht sinnvoll ist Threading mit Dateifunktionen zu verknüpfen habe ich schon kommen sehen, das ist mir auch bewusst, arbeite aber gerade damit und habe das als Beispiel genommen.
Der Weg ist das Ziel.
Lassen wir also den Sinn dieses Beispiels mal weg und sehen ob ich was zu PPL lernen kann.
Ich habe schon so viel über die Möglichkeiten und Probleme des PPL gelesen und wollte das jetzt mal umsetzen.
Dieses Beispiel ist immer noch besser als die Sleep Funkionen die sonst so verwendet werden.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.338 Beiträge
 
Delphi 12 Athens
 
#2

AW: Scan for Files mit der PPL

  Alt 19. Jun 2020, 13:55
Leider noch nicht, hatte vor 2 Wochen mal wieder einen Test dazu angefangen, aber Zeitmangel ....
Hatte angefangen eine kleine Testanwendung zu schreiben, um da mal alle Möglichkeiten gegenüberzustellen und zu vergleichen,
mit lokaler Festplatte und SMB zum NAS, frisch ohne Cache und mit gefülltem Cache. (mit über 1,5 Millionen Dateien in knapp 6 TB und viel zu vielen kleinen Verzeichnissen und ein paar viel zu großen Verzeichnissen ... geht mal mit dem Explorer ins WinSxS )

* RawDaten der Platte auslesen und Dateisystem selber parsen (schön schnell, aber das will Niemand, außer Forensikern und Datenrettern)
* MasterFileTable auslesen auch schnell, aber dafür braucht man höhere Rechte, also nicht praktikabel
* Shell Interfaces : MSDN-Library durchsuchenIEnumShellItems, bzw. das alte MSDN-Library durchsuchenIShellFolder ... weiß noch nicht (denke es sollte langsamer sein, aber wäre nicht überascht es wäre das nicht)
* Delphi-Referenz durchsuchenTDirectory.GetFiles nutzt FindFirst (wobei gier die Funktionen/Parameter/Rückgaben teils etwas "unglücklich" sind, wenn man das "effektiv" nutzen und nichts doppelt behandeln)
* Delphi-Referenz durchsuchenFindFirst nutzt MSDN-Library durchsuchenFindFirstFile, mit bissl teilweise blödsinnigem Overhead (alles Suchen und dann filtern ... kann auch sein, das ich es grade mit GetFiles verwechsel)
* MSDN-Library durchsuchenFindFirstFileEx statt MSDN-Library durchsuchenFindFirstFile geht schon besser (mit den richtigen Optionen)
* am Besten lief es mit der Bei Google suchenNative-API, was langsam nutzbar ist, seitdem Microsoft anfängt die offiziell zu Dokumentieren und es somit nicht mehr per se heißt "die ist intern und geheim und kann sich jederzeit unvorhersehbar ändern oder die 'Hacker' haben die API falsch entschlüsselt"

Vielleicht such dich später mal meinen Testcode raus ... Mal sehn, ob ich mit dem Fingerabdrucksensor noch vor Sonntagabend fertig werde und mich dann langweile.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (19. Jun 2020 um 15:15 Uhr)
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#3

AW: Scan for Files mit der PPL

  Alt 19. Jun 2020, 14:00
Zitat:
* FindFirstFileEx statt FindFirstFile geht schon besser (mit den richtigen Optionen)
Die sind deiner Meinung nach? (FindExInfoBasic, FIND_FIRST_EX_LARGE_FETCH ?)
Findet FindFirstFileEx, wie der Name nur sagt, nur Dateien?

Geändert von DieDolly (19. Jun 2020 um 14:04 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.338 Beiträge
 
Delphi 12 Athens
 
#4

AW: Scan for Files mit der PPL

  Alt 19. Jun 2020, 14:16
Ja, z.B.

Nee, es findet "Einträge" im Dateisystem, also Dateien, Verzeichnisse, ...
Auf Verzeichnissen vom Unix/Linux (gibt es jetzt ja auch im Windows und über Netzwerkfreigaben), da kann eine "Datei" ALLES sein, auch eine Hardware oder ein Programm.

Windows : ALLES ins ein Fenster
Linux : ALLES ist eine Datei
Postgres : ALLES in eine Tabelle
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (19. Jun 2020 um 14:20 Uhr)
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Scan for Files mit der PPL

  Alt 19. Jun 2020, 14:21
Bedenkt bitte, dass Ihr Euch hier in einem Thema zu "PPL und Dateisystem" befindet.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#6

AW: Scan for Files mit der PPL

  Alt 19. Jun 2020, 14:21
Für einen großen test hast du keine Zeit. Kannst du ein Minimalbeispiel posten damit man das mit dem PPL-Zeug vergleichen kann?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:12 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