Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Timer geht nur bis 24h -> wie kann ich das umgehen? (https://www.delphipraxis.net/10688-timer-geht-nur-bis-24h-wie-kann-ich-das-umgehen.html)

Wheelie 23. Okt 2003 13:02


Timer geht nur bis 24h -> wie kann ich das umgehen?
 
Hallo!

Ich programmiere gerade ein Tool, mit dem ich die Laufzeit der anderen Programme überwachen kann.

Jetzt habe ich zu überwachende Programme, die über 24h im Monat aktiv sind...wie kann ich das
mit einer Variable des Typs TDateTime definieren?? 52h wären zum Beispiel 2 Tage und 4h...will aber eben, dass die volle Anzahl der Stunden angezeigt wird.

In der Suche habe ich dazu nicht wirklich was gefunden...kann man vielleicht mit DecodeDate oder FormatDateTime etwas anfangen??

Vielen Dank im voraus für eure Hilfe :-D

Gruß

Lukas

Ghostwalker 23. Okt 2003 13:23

Re: Timer geht nur bis 24h -> wie kann ich das umgehen?
 
Öhm..warum benutzt du nicht einfach einen Integer den du jede Stunde (Minute, Sekunde..je nach dem wie fein granuliert du das brauchst) erhöst ?

woki 23. Okt 2003 13:35

Re: Timer geht nur bis 24h -> wie kann ich das umgehen?
 
Hallo,

also, z.B. 60h = 2,5Tage werden bei TDateTime als 2,5 angegeben. Will man den Wert in h haben, dann ist das einfach TDateTimewert x 24.

Grüsse
Woki

jokli 23. Okt 2003 14:18

Re: Timer geht nur bis 24h -> wie kann ich das umgehen?
 
Es gibt auch SecondsBetween usw.

Die Funktion HoursBetween gibt die Anzahl der ganzen Stunden zurück, die zwischen den beiden angegebenen TDateTime-Werten verstrichen sind.

Unit

DateUtils

Kategorie

Datum/Zeit

function HoursBetween(const ANow, AThen: TDateTime): Int64;

Beschreibung

Mit HoursBetween können Sie die Differenz zwischen zwei TDateTime-Werten in Stunden ermitteln. HoursBetween zählt nur Stunden, die vollständig verstrichen sind. Deshalb meldet HoursBetween als Differenz zwischen 9:00 Uhr und 9:59:59 Uhr den Wert Null, da die Differenz um eine Sekunde kürzer als eine Stunde ist.

Viele Grüße, Joachim (joachim@amphion.de)

Luckie 23. Okt 2003 16:16

Re: Timer geht nur bis 24h -> wie kann ich das umgehen?
 
Nutz die API GetProcessTimes. Sie beinhaltet eine Variable welche den Startzeitpunkt des Prozesses angibt. Siehe dazu auch meine SysInfo, Prozess auswählen und auf Details klicken.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz