Hallo!
Ich stehe vor einer Aufgabe die sich als tückischer als am Anfang geglaubt habe heraus stellt: Es gibt immer (leider) Benutzer die sich einen PC teilen müssen und daher den "schnellen Benutzerwechsel" verwenden. Da ist jetzt noch nichts verwerfliches daran, aber wenn auf doch eher schwach ausgestatten Rechner 10 oder mehr Benutzer angemeldet sind wird das zum Problem.
Jetzt soll ich einen automatischen Logout nach x Stunden Inaktivität machen. GPO gibt da keine (ist keine RDP-Sitztung), Boardmittel sind nicht vorhanden. Jetzt hatte ich die Idee ein kleines Programm dem Benutzer zu gegben der die _Timer_GetIdelTime auswertet und nach einer Zeitvorgabe ein Logoff durchführt.
Jetzt kommt der Teil der leider nicht funktioniert: Das Programm läuft auch weiter wenn sich ein andere Benutzer anmeldet (mit Logfile wegschreiben getestet), nur das logoff sei es aus Autoit oder auch mit logoff.exe wird einfach nicht durchgeführt bzw. einfach ignoriert.
Setzte ich ein logoff /sessionID mit erhöhten Rechten auf den auszuloggenden User ab funktioniert das. Nur aus dem Kontext heraus kann ich nicht die Idle-Time des Benutzer feststellen
Quser.exe hat ein paar Bugs und zeigt nicht immer die richtige Idle-Time an...das hatte ich auch schon am Schirm!
Nun zur AutoIT-Frage: gibt es eine Möglichkeit die Idle-Time für alle User abzufragen (mit erhöhten Rechten oder als System? Oder hat wer eine ganz andere Idee wie man das lösen kann?
lg
Racer