![]() |
Frage zu FindFirst/FindNext
Moin,
ich durchsuche mithilfe von FindFirst, FindNext einen Ordner nach anderen Ordnern. Es klappt auch alles bestens, jedoch zeigt er immer, wenn ich die Ordner in einem Memo anzeigen will an Stelle 1 und 2 einen (.) und einen (..). Wie kann ich dies wegbekommen? mfG, Nico |
Re: Frage zu FindFirst/FindNext
Delphi-Quellcode:
Einfach die erste Stelle des Namens abfragen. 8-)
var
lEc : Integer; lDinfo : TSearchRec; lEc:=FindFirst('*.*',faDirectory,lDinfo); while lEc = 0 do begin if lDinfo.Name[1] <> '.' then begin //Und hier der gewünschte Kram... end; lEc:=FindNext(lDinfo); end; FindClose(lDinfo); Stefan |
Re: Frage zu FindFirst/FindNext
Danke für die schnelle Antwort,
aber wie bekomme ich die Ergebnisse jetzt in das Memo? irgendwie klappt das mit MemoUnits.Lines.Add(1Dinfo.name); nicht. Edit: komischerweise gehts jetzt, obwohl ich nix geändert habe :lol: Danke für den Quelltext, funktioniert super :thumb: mfG, Nico |
Re: Frage zu FindFirst/FindNext
Dann lass mal etwas Code sehen. Das sollte so klappen. Vor lDinfo ist das übrigens ein kleines "L" und keine Eins. Lokale Variablen fangen bei mir immer mit "l" an.
|
Re: Frage zu FindFirst/FindNext
Mache es einfach genau so ins Memo wie "zuvor" nur nicht bei Ordnern, die mit '.' anfangen.
{BTW: . = der Ordner in dem du dich befindest .. = der Ordner über dem aktuellen Ordner. } |
Re: Frage zu FindFirst/FindNext
upps :oops: :oops: :oops:
|
Re: Frage zu FindFirst/FindNext
Zitat:
Entsprechend wäre die bessere Lösung:
Delphi-Quellcode:
[pre]var
lEc : Integer; lDinfo : TSearchRec; lEc:=FindFirst('*.*',faDirectory,lDinfo); while lEc = 0 do begin if (lDinfo.Name <> '.') and (lDinfo.Name <> '..') then begin //Und hier der gewünschte Kram... end; lEc:=FindNext(lDinfo); end; FindClose(lDinfo); [/pre] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:14 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