procedure TForm1.Button1Click(Sender: TObject);
begin
  findfile('*.*',memo1.lines);
end;procedure tform1.FindFile(APath: String;FList: TStrings);
var
FSearchRec: TSearchRec;
FindResult: integer;
begin
      FindResult := FindFirst(APath,faAnyFile,FSearchRec);
      while FindResult = 0 do
      begin
        FList.Add(APath+FSearchRec.name);
        FindResult := FindNext(FSearchRec);
      end;
      FindClose(FSearchRec);
      memo1.lines:=FList;
    end;end.

解决方案 »

  1.   

    对,memo1.lines:=FList; 这一句不需要,因为findfile('*.*',memo1.lines);这一函数调用中就已经提供了 memo1.lines 做为存放文件列表的TStrings 了。
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      findfile('*.*',memo1.lines);
    end;procedure tform1.FindFile(APath: String;FList: TStrings);
    var
    FSearchRec: TSearchRec;
    FindResult: integer;
    begin
          FindResult := FindFirst(APath,faAnyFile,FSearchRec);
          while FindResult = 0 do
          begin
            FList.Add(APath+FSearchRec.name);
            FindResult := FindNext(FSearchRec);
          end;
          FindClose(FSearchRec);
          memo1.lines:=FList;
        end;end.1、findfile('*.*',memo1.lines);  用*.*做参数是错误的,没有路径
    2、用memo1.lines做参数也不妥,因为有语句memo1.lines:=FList;
    修改意见:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      findfile('d:\test\');
    end;procedure tform1.FindFile(APath: String);
    var
      FSearchRec: TSearchRec;
      FindResult: integer;
    begin
      Memo1.clear;
      FindResult := FindFirst(APath+'*.*',faAnyFile,FSearchRec);
      while FindResult = 0 do
      begin
        Memo1.lines.Add(APath+FSearchRec.name);
        FindResult := FindNext(FSearchRec);
      end;
      FindClose(FSearchRec);
    end;end.未测试,自己测试