AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Dateinamen der gesamten CD in die Tlistbox einfügen
Thema durchsuchen
Ansicht
Themen-Optionen

Dateinamen der gesamten CD in die Tlistbox einfügen

Ein Thema von UnixX · begonnen am 28. Feb 2004 · letzter Beitrag vom 29. Feb 2004
Antwort Antwort
UnixX

Registriert seit: 26. Jul 2003
Ort: Unknown
25 Beiträge
 
FreePascal / Lazarus
 
#1

Dateinamen der gesamten CD in die Tlistbox einfügen

  Alt 28. Feb 2004, 20:02
Hallo!!!!!!!!!!!!!

Ich möchte von einer CD die gesamten Dateien mit Pfad in eine Tlistbox einfügen.
Ich habe mir schon was zurecht gebastelt, aber das funktioniert noch nicht so ganz.
Es liest nur die oberen Ordner und Dateien ein, aber keine Unterverzeichnisse mit Dateien.


Delphi-Quellcode:
procedure filllist(Folder: string; sl: TStrings);
var
Rec : TSearchRec;
begin
 sl.Clear;
 if SysUtils.FindFirst(Folder + '*.*', faAnyFile, Rec) = 0 then

 try
    repeat
      sl.Add(Rec.name );
    until SysUtils.FindNext(Rec) <> 0;
  finally
    SysUtils.FindClose(Rec);
  end;
end;

function BrowseDialog(const Title: string; const Flag: integer): string;
var
  lpItemID : PItemIDList;
  BrowseInfo : TBrowseInfo;
  DisplayName : array[0..MAX_PATH] of char;
  TempPath : array[0..MAX_PATH] of char;
begin
  Result:='';
  FillChar(BrowseInfo, sizeof(TBrowseInfo), #0);
  with BrowseInfo do begin
    hwndOwner := Application.Handle;
    pszDisplayName := @DisplayName;
    lpszTitle := PChar(Title);
    ulFlags := Flag;
  end;
  lpItemID := SHBrowseForFolder(BrowseInfo);
  if lpItemId <> nil then begin
    SHGetPathFromIDList(lpItemID, TempPath);
    Result := IncludeTrailingBackslash(TempPath);
    GlobalFreePtr(lpItemID);
  end;
end;

procedure TForm1.readClick(Sender: TObject);
var
S:string;
begin
s := BrowseDialog('Choose for all files', BIF_RETURNONLYFSDIRS);
filllist(s,listbox.Items );

end;

Könnt ihr mir helfen??????????
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Dateinamen der gesamten CD in die Tlistbox einfügen

  Alt 28. Feb 2004, 20:05
Du kannst dir sekber helfen: FindFirst FindnextFindFirst Findnext.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#3

Re: Dateinamen der gesamten CD in die Tlistbox einfügen

  Alt 29. Feb 2004, 01:35
Da wirst Du wohl kaum um Rekursion drumrum kommen. Jedenfalls ist das ein klassisches Beispiel für deren Einsatz. In dem "Doublekiller" Thread kannst du auch mal gucken. Teile davon sind 1:1 für Deinen Zweck umsetzbar.
Gruß
Hansa
  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 09:48 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