AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi dateinamen in einem Ordner abfragen??
Thema durchsuchen
Ansicht
Themen-Optionen

dateinamen in einem Ordner abfragen??

Ein Thema von erniepb · begonnen am 11. Jun 2002 · letzter Beitrag vom 27. Jun 2003
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#11
  Alt 27. Jun 2003, 12:29
Eine bemerkung noch von mir.

In der TSearchRec Struktur sind Win32FindData Handles des OS gespeichert. Nach einem erfolgreichen FindFirst() sind diese Handles vom OS korrekt initialisiert.

In einigen Delphiversionen wird durch die RTL diese Handles aber nicht initialisiert, sie zeigen ins Nirwana. Sollte nun FindFirst() unter dieser RTL fehlschlagen und nachfolgend FindClose() aufgerufen werden, so greift das OS auf ungültige Handles zu. Folge: Zugriffsverletzungen in Kernel32.dll.

Fazit: FindClose() nur aufrufen wenn FindFirst() = 0, also

Delphi-Quellcode:
procedure Scan(const Path: String);
var
  SR: TSreachRec;
begin
  if FindFirst(Path + '*.*', faAnyFile, SR) = 0 then
  try
    repeat
      if (SR.Attr and faDirectory <> 0) and
         (SR.Name <> '.') and
         (SR.Name <> '..') then
      begin
        // Directory, rekursiver Aufruf hier
        Scan(Path + SR.Name + '\');
      end else
      begin
        // Datei, VolumeID etc.
      end;
    until FindNext(SR) <> 0;
  finally
    FindClose(SR);
  end;
end;
Gruß Hagen

[Edit=Sakura]Siehe Hagens nächstes Posting ;-)[/Edit]
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#12
  Alt 27. Jun 2003, 12:32
Irgendwie bekomme ich die Formatierung nicht hin
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#13
  Alt 27. Jun 2003, 12:35
Einerseits waren die Tags falsch geschachtelt, andererseits hattest Du die Option "BBCode in diesem Beitrag deaktivieren" eingeschaltet.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 11:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz