Wenn Du einen Wert von dem anderen abziehst erhälst Du einen Double der die Tagesdifferent vor dem Komma und die Zeitdifferenz im Nachkommabereich enthält.
Warum der Aufwand mit Kommazahlen? TTimeSpan hat alles was man braucht:
Delphi-Quellcode:
uses System.TimeSpan;
procedure justTimeSpanThings();
var
fromDate, toDate: TDateTime;
timeSpan: TTimeSpan;
begin
fromDate := EncodeDate(1945, 12, 24);
toDate := EncodeDate(2015, 12, 28);
timeSpan := TTimeSpan.Subtract(toDate, fromDate);
ShowMessageFmt('Das waren %.0f Tage', [timeSpan.TotalDays]);
end;