Hallo,
nur so ein Gefühl:
Deine Berechnungen erzeugen im Datums-Teil von TDateTime ungewollte Veränderungen oder eben genau nicht
Ich würde das ganze eher so machen:
Delphi-Quellcode:
tEndzeit := now + StrToTime('00:03:00');
Timer1.Enabled := True;
//in OnTimer
tCalcTime := tEndzeit - now;
Label1.Caption := TimeToStr(tCalcTime);
if (tEndZeit <= now) then
begin
Timer1.Enabled := False;
MessageDlg('Vorgang sollte abgeschlossen sein!', mtWarning, [mbOK], 0);
end;
Unterschied ist anstatt
Time besser
now zu verwenden und zu prüfen ob die Endzeit in der Vergangenheit liegt.
Gruß, Chris