同上

解决方案 »

  1.   

    使用递归方法实现,或使用windowsAPI函数。
      

  2.   

    procedure TForm1._DelTree(ASourceDir:String);
    var
    FileRec:TSearchrec;
    Sour:String;
    begin
      Sour:=ASourceDir;
      if Sour[Length(Sour)]<>'\' then Sour := Sour + '\';  if not DirectoryExists(ASourceDir) then
         begin
           ShowMessage('来源目录不存在!!');
           exit;
         end;  if FindFirst(Sour+'*.*',faAnyfile,FileRec) = 0 then
        repeat
          //if (FileRec.Attr = faDirectory) then
          if ((FileRec.Attr and faDirectory) <> 0) then
             begin
               if (FileRec.Name<>'.') and (FileRec.Name<>'..') then
                  begin
                    _DelTree(Sour+FileRec.Name);                FileSetAttr(Sour+FileRec.Name,faArchive);
                    RemoveDir(Sour+FileRec.Name);
                  end;
             end
          else
             begin
               FileSetAttr(Sour+FileRec.Name,faArchive);
               deletefile(Sour+FileRec.Name);
             end;
        until FindNext(FileRec)<>0;  FindClose(FileRec);  FileSetAttr(Sour,faArchive);
      RemoveDir(Sour);end;
      

  3.   

    winexec('del '+dir+'\*.* ',0);
    dir是目录