{===============================================================================
const DateTimeMax = 20;
var
DateTimeData, // Quantidade de DIAS desde 01/01/0001...
DateTimeTempo: TDateTime; // Quantidade de MILISEGUNDOS desde ZERO HORAS...
DateTimeIni: array [1..DateTimeMax] of TTimeStamp;
DateTimeFim: array [1..DateTimeMax] of TTimeStamp;
DateTimeLapso: array [1..DateTimeMax] of TTimeStamp;
DateTimeString: string;
LapsoDeTempo: Capacidade de guardar até 20(DateTimeMax) Lapsos
LapsoDeTempo(1, ''); INICIA a CONTAGEM de TEMPO
LapsoDeTempo(1, ''); ENCERRA a CONTAGEM de TEMPO
LapsoDeTempo(1, ' Tempo Total de Leitura do Arquivo ');
EXIBE a MENSAGEM e ZERA a CONTAGEM na ocorrencia 1.
===============================================================================} function LapsoDeTempo(IDENTIFICACAO: integer; COMENTARIO: string): integer; var Idx: integer; procedure Zerar(APONTADOR: integer); begin
DateTimeIni[APONTADOR].Date:= 0; DateTimeIni[APONTADOR].Time:= 0;
DateTimeFim[APONTADOR].Date:= 0; DateTimeFim[APONTADOR].Time:= 0;
DateTimeLapso[APONTADOR].Date:= 0; DateTimeLapso[APONTADOR].Time:= 0; end; begin {LIMPEZA dos temporizadores} if DateTimeInicial = 0 thenbegin
DateTimeInicial:= 1; for Idx:= 1 to DateTimeMax do Zerar(Idx); end; {TEMPO INICIAL...}
DateTimeTempo:= Time; DateTimeData:= Date;
TimeStampData := DateTimeToTimeStamp(DateTimeData);
TimeStampTempo:= DateTimeToTimeStamp(DateTimeTempo); {INICIAR contagem...} if DateTimeIni[IDENTIFICACAO].Date = 0 thenbegin
DateTimeIni[IDENTIFICACAO].Date:= TimeStampData.Date;
DateTimeIni[IDENTIFICACAO].Time:= TimeStampTempo.Time; end elsebegin {TEMPO FINAL e TEMPO DECORRIDO...} if Length(COMENTARIO) = 0 thenbegin
DateTimeFim[IDENTIFICACAO].Date:= TimeStampData.Date;
DateTimeFim[IDENTIFICACAO].Time:= TimeStampTempo.Time;
DateTimeLapso[IDENTIFICACAO].Date:=
DateTimeFim[IDENTIFICACAO].Date - DateTimeIni[IDENTIFICACAO].Date;
DateTimeLapso[IDENTIFICACAO].Time:=
DateTimeFim[IDENTIFICACAO].Time - DateTimeIni[IDENTIFICACAO].Time; end; {EXIBIÇÃO e REINICIALIZAÇÃO...} if Length(COMENTARIO) > 0 thenbegin
DateTimeString := IntToStr(DateTimeLapso[IDENTIFICACAO].Date) +' dias '
+IntToStr(DateTimeLapso[IDENTIFICACAO].Time) +' MiliSegundos.';
ShowMessage(DateTimeString +COMENTARIO);
Zerar(IDENTIFICACAO); end; end;