Forum: Programmieren allgemein
by himitsu,
22. Mär 2023
Der Überlauf ist vollkommen egal.
Hier kommt es einfach nur auf die Differenz der beiden Werte an.
Und die Differenz kann auch nur positiv sein, da ein Ereignis ja nie in der Zukunft liegt.
{$OVERFLOWCHECKS OFF} // Mindestens in Delphis seit 11.2 muß die nun standardmäßig aktive Überlaufprüfung deaktiviert werden
EinCardinalBzwLongWord := GetTickCount - lastInput.dwTime;
Forum: Programmieren allgemein
by himitsu,
22. Mär 2023
Das ist hier vollkommen egal, da LastUiserInput so oder so nur 32 Bit liefert
und somit auch GetTickCount ausreicht.
Ja, wenn es länger als 49 Tage keinen Input gab, dann gibt es hiermit ein Problemchen.
Einfach den letzten Wert merken und so lange alles ignorieren, wie er sich nicht ändert.
Es ist sehr unwahrscheinlich, dass jemand zusällig, nach genau 49,71 Tagen oder 99,42 oder...
Forum: Programmieren allgemein
by himitsu,
22. Mär 2023
GetCursorPos
GetLastInputInfo + GetTickCount
Und wenn die Anzeige des Browser im selben Thread abläuft, sollten dessen Maus- und Tastatur-Ereignisse durch die MessageQueue des selben Threads rauschen.
TApplicationEvents.OnMessage