Ver Mensaje Individual
  #6  
Antiguo 23-05-2022
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.055
Reputación: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Copiado de la delphi comunity:
mDateTimeToMillisecons es DateTimeToMillisecons
mMinutesBetween es MinutesBetween

Código Delphi [-]
function mDateTimeToMilliseconds(const ADateTime: TDateTime): Int64;
var
  LTimeStamp: TTimeStamp;
begin
  LTimeStamp := DateTimeToTimeStamp(ADateTime);
  Result := LTimeStamp.Date;
  Result := (Result * MSecsPerDay) + LTimeStamp.Time;
end;

function mMinutesBetween(const ANow, AThen: TDateTime): Int64;
begin
  Result := Abs(mDateTimeToMilliseconds(ANow) - mDateTimeToMilliseconds(AThen))
    div (MSecsPerSec * SecsPerMin);
end;

procedure TForm24.Button1Click(Sender: TObject);
var
  dtA, dtB :TDateTime;
  ano, mes, dia, hor1,hor2, min, seg, mil :int64;
begin
  ano:=2022;
  mes:=1;
  dia:=1;
  hor1:=10;
  hor2:=11;
  min:=0;
  seg:=0;
  mil:=0;

  dtA := EncodeDateTime(ano, mes, dia, hor1, min, seg, mil);
  dtB := EncodeDateTime(ano, mes, dia, hor2, min, seg, mil);
  ShowMessage(IntToStr(mMinutesBetween(dtB, dtA)));

  hor1:=9;
  hor2:=10;

  dtA := EncodeDateTime(ano, mes, dia, hor1, min, seg, mil);
  dtB := EncodeDateTime(ano, mes, dia, hor2, min, seg, mil);;
  ShowMessage(IntToStr(MminutesBetween(dtB, dtA)));
end;
Responder Con Cita