Buenos días,
me pasa algo muy curioso que no se si es por error al hacer el cálculo o es algo interno de delphi.
A partir de 2 horas, calculo la diferencia que hay entre ambas para mostrarlo por pantalla y por norma general lo hace de forma correcta pero en ocasiones no lo hace bien. Una de las horas que he detectado es cuando la hora de inicio es 07:00:00 y la de fin 11:00:00, esto tendría que devolver 4 horas y en realidad me está devolviendo 3.98 horas.
A continuación pongo el código en el que lo calculo por si hubiera algún error u otro modo de calcularlo.
Código Delphi
[-]
minutos := MinutesBetween(HoraInicio, HoraFin);
horas := StrToFloat(FormatFloat('#0.00', (minutos / 60)));
ShowMessage('Horas: ' + FloatToStr(horas));
Gracias de antemano y un saludo.