Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi versuche pdfdatein aufzulisten (https://www.delphipraxis.net/55739-versuche-pdfdatein-aufzulisten.html)

Tigermoon 26. Okt 2005 08:35


versuche pdfdatein aufzulisten
 
hallo

ich versuche pdf dateien in einer listbox aufzulisten?

kann mir jemand helfen?

hatte es hiermit versuche
aber das bringt nur fehler meldungen

Delphi-Quellcode:
procedure FindAllFiles(RootFolder: string; Mask: string = '*.pdf'; Recurse: Boolean = True);
 var
  SR: TSearchRec;
 begin
  RootFolder := IncludeTrailingPathDelimiter(RootFolder);
  if Recurse then
    if FindFirst(RootFolder + '*.pdf', faAnyFile, SR) = 0 then
      try
        repeat
          if SR.Attr and faDirectory = faDirectory then
            // --> ein Verzeichnis wurde gefunden
            //   der Verzeichnisname steht in SR.Name
            //   der vollständige Verzeichnisname (inkl. darüberliegender Pfade) ist
            //       RootFolder + SR.Name
            if (SR.Name <> '.') and (SR.Name <> '..') then
              FindAllFiles(RootFolder + SR.Name, Mask, Recurse);
        until FindNext(SR) <> 0;
      finally
        FindClose(SR);
      end;
  if FindFirst(RootFolder + Mask, faAnyFile, SR) = 0 then
    try
      repeat
        if SR.Attr and faDirectory <> faDirectory then
        begin
          // --> eine Datei wurde gefunden
          //   der Dateiname steht in SR.Name
          //   der vollständige Dateiname (inkl. Pfadangabe) ist
          //       RootFolder + SR.Name

          // folgende Zeile schreibt den vollständigen Namen in eine Memo Feld des
          // Formulars Form1
          Hauptmenu.Liste.AddItem(RootFolder + SR.Name);
        end;
      until FindNext(SR) <> 0;
    finally
      FindClose(SR);
    end;
end;
gruß stephie

TeronG 26. Okt 2005 08:41

Re: versuche pdfdatein aufzulisten
 
wenn du das nicht unbedingt selber machen willst gäbe es hier in der DP "FindAllFiles" ..... das schmeist das ergebnis dann in eine TStringlist ..

Tigermoon 26. Okt 2005 09:23

Re: versuche pdfdatein aufzulisten
 
danke für die antwort

hatte einen fehler drin

Delphi-Quellcode:
procedure FindAllFiles(RootFolder: string; Mask: string; Recurse: Boolean);
Delphi-Quellcode:
procedure THauptmenu.FormCreate(Sender: TObject);
var
RootFolder: string;
Mask: string;
Recurse: Boolean;
begin

  //ListBox füllen
  RootFolder := extractfilepath(application.ExeName);
  mask := '*.pdf';
  Recurse := True;

  FindAllFiles(RootFolder, Mask, Recurse);


end;
Delphi-Quellcode:
procedure FindAllFiles(RootFolder: string; Mask: string; Recurse: Boolean);
 var
  SR: TSearchRec;
 begin
  if Recurse then
    if FindFirst(RootFolder + Mask, faAnyFile, SR) = 0 then
      try
        repeat
          if SR.Attr and faDirectory = faDirectory then
            // --> ein Verzeichnis wurde gefunden
            //   der Verzeichnisname steht in SR.Name
            //   der vollständige Verzeichnisname (inkl. darüberliegender Pfade) ist
            //       RootFolder + SR.Name
            if (SR.Name <> '.') and (SR.Name <> '..') then
              FindAllFiles(RootFolder + SR.Name, Mask, Recurse);
        until FindNext(SR) <> 0;
      finally
        FindClose(SR);
      end;
  if FindFirst(RootFolder + Mask, faAnyFile, SR) = 0 then
    try
      repeat
        if SR.Attr and faDirectory <> faDirectory then
        begin
          // --> eine Datei wurde gefunden
          //   der Dateiname steht in SR.Name
          //   der vollständige Dateiname (inkl. Pfadangabe) ist
          //       RootFolder + SR.Name

          // folgende Zeile schreibt den vollständigen Namen in eine Memo Feld des
          // Formulars Form1
          Hauptmenu.Liste.Items.Add(SR.Name);
        end;
      until FindNext(SR) <> 0;
    finally
      FindClose(SR);
    end;
end;
listbox aufrufen

Delphi-Quellcode:
procedure THauptmenu.oeffnen(Sender: TObject);
var
auswahl:string;
begin
auswahl := hauptmenu.Liste.Items.Strings[hauptmenu.Liste.ItemIndex];
shellexecute(handle, 'open', PChar(auswahl), nil, nil, sw_show);
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:21 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