• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Delphi: Очистить Содержимое Папки

Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,562
Баллы
155
Очистить содержимое папки можно следующим образом:
Код:
function ClearDir(Dir:string):Boolean;
var isFound:Boolean;
    sRec:TSearchRec;
begin
  Result:=false;
  ChDir(Dir);
  if IOResult <> 0 then
  begin
     ShowMessage('Не могу войти в каталог: '+Dir);
     Exit;
  end;
  if Dir[Length(Dir)] <> '\' then Dir:=Dir+'\';
  isFound:=FindFirst(Dir+'*.*',faAnyFile,sRec)=0;
  while isFound do
  begin
    if (sRec.Name <> '.') and (sRec.Name <> '..') then
      if (sRec.Attr and faDirectory)=faDirectory then
      begin
        if not ClearDir(Dir+sRec.Name) then
          Exit;
        if (sRec.Name <> '.') and (sRec.Name <> '..') then
          if (Dir+sRec.Name)<>Dir then
          begin
            ChDir('..');
            RmDir(Dir+sRec.Name);
          end;
      end
      else
        if not DeleteFile(Dir+sRec.Name) then
        begin
          ShowMessage('Не могу удалить файл: '+sRec.Name );
          Exit;
        end;
    isFound:=FindNext(sRec)=0;
  end;
  FindClose(sRec);
  Result:=IOResult=0;
end;
 
Вверх Снизу