Einzelnen Beitrag anzeigen

jonsen2.0.0.9

Registriert seit: 5. Dez 2009
67 Beiträge
 
Delphi 7 Personal
 
#1

Suchen funktioniert nicht

  Alt 9. Dez 2009, 15:04
Hallo,

hab folgendes Problem bei dem ihr mir hoffentlich helfen könnt:

Habe ein Programm geschrieben bei dem ein selbstegewählter pafd rekursiv nach mp3 dateien durchsucht wird.

diese sollen ohne den Pfad in chekclistbox1 ausgegeben werden aber in sl2 (einer stringlist) mit Pfad
geschrieben werden. Allerdings lässt der den Pfad nicht weg:

Delphi-Quellcode:
Procedure FindFiles (aPath, aFindMask: String; aWithSub: Boolean; aResult: tStrings; removePath:Boolean);
Var
  FindRec: tSearchRec;
Begin

  If (aPath = '') or (aFindMask = '') or Not Assigned (aResult) Then
    Exit;

  If aPath[Length (aPath)] <> '\Then
    aPath := aPath + '\';


  If FindFirst (aPath + aFindMask, faAnyFile, FindRec) = 0 Then
    Repeat
      If (FindRec.Name <> '.') and (FindRec.Name <> '..') Then
    begin
     if removePath then
      aResult.Add(ExtractFileName(aPath + FindRec.Name))
     else
      aResult.Add(aPath + FindRec.Name);
    end;
    Until FindNext (FindRec) <> 0;

  FindClose (FindRec);


  If Not aWithSub Then
    Exit;


  If FindFirst (aPath + '*.*', faAnyFile, FindRec) = 0 Then
    Repeat
      If (FindRec.Name <> '.') and (FindRec.Name <> '..') Then

        If Boolean (FindRec.Attr and faDirectory) Then

          FindFiles (aPath + FindRec.Name, aFindMask, aWithSub, aResult, false);
    Until FindNext (FindRec) <> 0;

   FindClose (FindRec);
End;

procedure TForm3.Button1Click(Sender: TObject);
var
 i: Integer;
begin
 if SelectDirectory('Verzeichnis wählen', '*:\', sDir) then
  begin
   if DirectoryExists(sDir) then
    begin

     FindFiles(sDir, '*.mp3', True, CheckListBox1.Items, true);

     sl2.Clear;

     for i := Pred(CheckListBox1.Items.Count) downto 0 do
      begin
       sl2.Add(CheckListBox1.Items[i]);
      end;
    end;
  end;
end;
hab schon mehreres versucht.
hab auch mit removeExt versucht aber geht auch nicht.

Hoffe ihr habt da was für mich.

schon mal DANKE
  Mit Zitat antworten Zitat