Показать сообщение отдельно
  #1  
Старый 30.07.2019, 05:01
Dreammaster Dreammaster вне форума
Прохожий
 
Регистрация: 11.06.2014
Сообщения: 36
Версия Delphi: RAD Studio XE3
Репутация: 10
По умолчанию Удаление старой версии файла по его названию

Доброго времени суток. Есть код, согласно которому создается свежий файл с текущей датой в названии. Он прекрасно работает.
Но..перед созданием нужно проверить, есть ли вчерашний (позавчерашний, месячной давности и т.п.) файл и, если есть, удалить его. Пробую так, но не получается: удаляет и свежесозданный файл тоже.
Код:
var
  TD: TDateTime;
  F: textFile; 
begin
 TD:= Now;
  if  not FileExists(DateToStr(TD)) = true then //Проверка на присутствие имени с датой
    begin                                                 //если нет, то создать
      WinExec(Pchar('cmd /c del *.2019'), 1); // Сначала удалить файл с расширением *.2019
      //ShellExecute(0, 'open', 'cmd.exe', '/c del *.2019', nil, SW_HIDE);    
      AssignFile(F, datetostr(TD));  // Затем создать новый
      rewrite(F);
      writeln (F, 'Test');
      CloseFile(F);
    end
        else  begin                                     //Если есть, то дописать и ничего не удалять.
       AssignFile(F, datetostr(TD));
       Append(F, 'Test');
       CloseFile(F);
  end; 
Как реализовать задумку?
Ответить с цитированием