Auto Logout C Sharp
Hallo,
aktuell arbeite ich an einem kleinen Programm das mir für ein Kanban Lager Artikelanforderungen in unserem ERP System erstellt.
Gedacht habe ich es mir so das dieses Programm den ganzen Tag im Hintergrund läuft und wenn jemand einen Personalausweiß an einen RFID Scanner hält geht der Focus auf dieses Programm und man kann per Barcode den anzufordernden Artikel einscannen oder per Tastatur eingeben.
Jetzt hätte ich gerne das wenn man eine gewisse Zeit lang nichts in dieses Programm eingibt, sich automatisch von diesem Programm abmeldet und es wieder im Hintergrund verschwindet.
Jetzt ist für mich die Frage wie man am besten feststellen kann das in diesem Programm gearbeitet wird, ob andere aktiv genutzt werden ist mir egal.
Ich wollte jetzt nicht grade einen Timer Starten und den bei jeder Eingabe wieder zurücksetzten.
Gibt's dafür eine elegantere Möglichkeit?
Schon einmal vielen Dank für die Hilfe.
aktuell arbeite ich an einem kleinen Programm das mir für ein Kanban Lager Artikelanforderungen in unserem ERP System erstellt.
Gedacht habe ich es mir so das dieses Programm den ganzen Tag im Hintergrund läuft und wenn jemand einen Personalausweiß an einen RFID Scanner hält geht der Focus auf dieses Programm und man kann per Barcode den anzufordernden Artikel einscannen oder per Tastatur eingeben.
Jetzt hätte ich gerne das wenn man eine gewisse Zeit lang nichts in dieses Programm eingibt, sich automatisch von diesem Programm abmeldet und es wieder im Hintergrund verschwindet.
Jetzt ist für mich die Frage wie man am besten feststellen kann das in diesem Programm gearbeitet wird, ob andere aktiv genutzt werden ist mir egal.
Ich wollte jetzt nicht grade einen Timer Starten und den bei jeder Eingabe wieder zurücksetzten.
Gibt's dafür eine elegantere Möglichkeit?
Schon einmal vielen Dank für die Hilfe.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 189881
Url: https://administrator.de/forum/auto-logout-c-sharp-189881.html
Ausgedruckt am: 24.12.2024 um 18:12 Uhr
4 Kommentare
Neuester Kommentar
Hi wiesi200
die Frage ist, was bedeutet exakt: "das in diesem Programm gearbeitet wird".
Welche Kriterien entsprechen dann, nicht mehr im Programm arbeiten.
Arbeitet jemand, wenn er sich das Programm nur anschaut?
Arbeitet jemand nicht mehr, wenn das Fenster den Fokus verliert?
Es gibt auf jedenfall kein NotWorkingEvent.
In meinen Augen gibt es 3 Möglichkeiten.
Entweder du verwendest Events wie LostFocus.
Oder du verwendest einen Timer.
Oder aber du lässt dies den User entscheiden.
Das heisst, sobald der User auf minimieren drückt, verschwindet das Programm in den Hintergrund.
Letzteres scheint mir die bewährteste Methode zu sein
Gruss Mono
die Frage ist, was bedeutet exakt: "das in diesem Programm gearbeitet wird".
Welche Kriterien entsprechen dann, nicht mehr im Programm arbeiten.
Arbeitet jemand, wenn er sich das Programm nur anschaut?
Arbeitet jemand nicht mehr, wenn das Fenster den Fokus verliert?
Es gibt auf jedenfall kein NotWorkingEvent.
In meinen Augen gibt es 3 Möglichkeiten.
Entweder du verwendest Events wie LostFocus.
Oder du verwendest einen Timer.
Oder aber du lässt dies den User entscheiden.
Das heisst, sobald der User auf minimieren drückt, verschwindet das Programm in den Hintergrund.
Letzteres scheint mir die bewährteste Methode zu sein
Gruss Mono
Da sich das Programm automatisch nach der Abmeldung minimieren soll scheidet das mit dem minimieren eigentlich aus.
Nach der Abmeldung?
Warum nicht automatisch abmelden, wenn es minimiert wird?
Als Event für den Timer, falls du diesen verwendest würde ich eventuell das TextChangedEvent der TextControls verwenden.
Ausserdem gibt es noch ein globales Application.Idle Event.
Ich weiss nicht, ob dies für dich zutrifft.
Dieses wird immer gefeuert, wenn das Programm beginnt zu idlen^^
Nach der Abmeldung?
Warum nicht automatisch abmelden, wenn es minimiert wird?
Als Event für den Timer, falls du diesen verwendest würde ich eventuell das TextChangedEvent der TextControls verwenden.
Ausserdem gibt es noch ein globales Application.Idle Event.
Ich weiss nicht, ob dies für dich zutrifft.
Dieses wird immer gefeuert, wenn das Programm beginnt zu idlen^^