También podrías intentar deshabilitar el Timer mientras se ejecuta el proceso largo y al terminar, volver a habilitarlo:
Código:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if (TimeToStr(Time)='22:12:00') then
try
Timer1.Enabled := False;
// Proceso una gran cantidad de datos
finally
Timer1.Enabled := True;
end;
end;
Un saludo