AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Ordnerausleseproblem
Thema durchsuchen
Ansicht
Themen-Optionen

Ordnerausleseproblem

Ein Thema von zebrafalke · begonnen am 19. Jul 2006 · letzter Beitrag vom 19. Jul 2006
Antwort Antwort
Benutzerbild von zebrafalke
zebrafalke

Registriert seit: 25. Feb 2006
155 Beiträge
 
Turbo Delphi für Win32
 
#1

Ordnerausleseproblem

  Alt 19. Jul 2006, 16:15
Hallo,

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  SearchRec: TSearchRec;
begin
SelectDirectory('Wählen Sie einen Ordner aus:','', Dir);
Listbox1.Items.Clear;

  FindFirst(ExtractFilePath(Dir) + '*.*', faAnyFile, SearchRec);
  repeat
    ListBox1.items.add(searchrec.Name);
  until FindNext(searchrec) <> 0;
  findclose(searchrec);
end;
damit sollte er eigentlich einen wählbaren Ordner auslesen und die Dateien darin in einer Listbox darstellen.
In der Listbox befinden sich dann merkwürdigerweise aber nicht die Dateien des ausgewählten Ordners sondern die des Ordners, welcher eine Ebene höher als der gewählte ist....Hat irgendjemand ne idee?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Ordnerausleseproblem

  Alt 19. Jul 2006, 16:17
Du hast einen Ordner und schneidest mittels ExtractFilePath den Teil nach dem letzten Backslash ab. Welcher Order wird den wohl durchsucht?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

Re: Ordnerausleseproblem

  Alt 19. Jul 2006, 16:19
'\*.*'

da fehlt noch was ... du hängst ja die maske sonst direkt an den ordnernamen an und damit gehört si zu dem ordner und er zeigt diesen an (und alles was so anfängt, wie er heißt).

[edit]
ach ja, mit ExtractFileDir ginge es och

[edit2]
ach ja, warum überhaupt das ExtraxtFile..
da sucht sich der User in Verzeichnis aus und die nimmst das Elternverzeichnis zum durchsuchen
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von zebrafalke
zebrafalke

Registriert seit: 25. Feb 2006
155 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Ordnerausleseproblem

  Alt 19. Jul 2006, 16:27
hmm...wie dumm von mir...

Und wie krieg ich ihn dann dazu, den Ordner nur anhand des Pfades ohne ExtractFilePath auszulesen? Hab das schon ausprobiert, aber dann zeigt er fehler an und die ganze Prozedur geht dann nicht mehr....


Ich glaub ich stell mich dumm an...
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

Re: Ordnerausleseproblem

  Alt 19. Jul 2006, 16:33
SelectDirectory liefert doch den Pfad ohne TrailingBackslash?

also dann wohl so
FindFirst(Dir + '\*.*', faAnyFile, SearchRec); oder so
FindFirst(InludeohneTrailingBackslasch(Dir) + '*.*', faAnyFile, SearchRec);


obwohl der ordner hier meist nicht leer ist ('.' und '..' sind ja meist noch da) ... kann 'ne abfrage, ob überhaupt was gefunden wurde nicht schaden
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  SearchRec: TSearchRec;
begin
  SelectDirectory('Wählen Sie einen Ordner aus:','', Dir);
  Listbox1.Items.Clear;
  if FindFirst(ExtractFilePath(Dir) + '*.*', faAnyFile, SearchRec) then begin
    repeat
      ListBox1.items.add(searchrec.Name);
    until FindNext(searchrec) <> 0;
    findclose(searchrec);
  end;
end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von zebrafalke
zebrafalke

Registriert seit: 25. Feb 2006
155 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Ordnerausleseproblem

  Alt 19. Jul 2006, 16:40
Sowas ahnliches hab ich auch schon probiert, mit deinem code gehts!

DANKE!
  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 08:51 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