Функция EndOfADay – генерирует значение TDateTime, установленное на самый конец дня

Функция EndOfADay в Delphi генерирует значение TDateTime, установленное на самый конец дня.

Функция EndOfADay: Установка даты на последнюю миллисекунду 20-го века – иллюстрация бага Delphi

var
  mydate : TDateTime;

begin
  myDate := EndOfADay(1999, 365);

  // Гарантируем, что миллисекунды будут показаны
  LongTimeFormat := 'hh:mm:ss.zzz';
  ShowMessage('Конец 1999, используя короткий синтаксис = '+DateTimeToStr(myDate));

  myDate := EndOfADay(1999, 12, 31);

  // Гарантируем, что миллисекунды будут показаны
  LongTimeFormat := 'hh:mm:ss.zzz';
  ShowMessage('Конец 1999, используя длинный синтаксис = '+DateTimeToStr(myDate));
  ShowMessage('ПРЕДУПРЕЖДЕНИЕ - вышеупомянутое значение неправильно');
end;

Main Menu