Hi!
(Ich weis nicht, ob ich evtl. die falschen Stichwörter bei der Suche verwendet habe... jedenfalls blieb die Suche erfolglos.)
Ich würde gerne meine Applikation nach x Minuten ohne User-Aktivität abmelden. D.h. ich muss irgendwie die User-Eingaben überwachen, welche Eingaben das genau sind, ist egal.
Muss ich dafür wirklich einen Timer einbauen und diesen bei jedem Button-Click o.ä. zurücksetzen, oder gibt's da etwas eleganteres? 🤔
Danke für eure Hilfe!
Gruß,
eveN
Ich lasse mich gerne korrigieren! (:
Das sieht sehr gut aus, werd ich direkt testen, besten Dank!
Ich lasse mich gerne korrigieren! (:
Okay, hilft mir trotzdem weiter!
Danke! -> [erledigt]
Ich lasse mich gerne korrigieren! (:
das ist jedoch OS-weit und nciht anwendungsspezifisch. hat der user also einfach nur die mouse bewegt (nicht in deiner anwengung), gilt das als input und die lastinputtime wird neu gesetzt
Nur auf die eigene Anwendung bezogen muss man selber bauen.
Man kann sich hierfür einklinken:
Einen MessageFilter bauen:
private class ApplicationIdleMessageFilter : System.Windows.Forms.IMessageFilter
Dann in der ApplicationIdleMessageFilter-Klasse im PreFilterMessage die Message auswerten (immer false zurückgeben) ... und z.B einen Timer resetten.
Diesen MessageFilter muss man dann nur noch in die Pumpe reinhängen und fertig.
System.Windows.Forms.Application.AddMessageFilter(... die Instanz des Filters)
Also eigentlich ganz einfach (wenn man weiss wie)
Gruss
Programmierhans
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
Hallo Programmierhans,
danke für die Info. Wenn ich's gebacken bekomme, werd ich auch das mal testen! 😃
Gruß,
eveN
Ich lasse mich gerne korrigieren! (: