GetUserName() aus Service heraus



  • Hallo Leute,

    gibt es irgendwie eine Möglichkeit herauszufinden, wer sich parallel zum aktuellen Nutzer noch am System angemeldet hat? Bei WinXP kann man ja z.B. auch "Benutzer wechseln" und dann sind zwei Nutzer gleichzeitig angemeldet.

    Mein Problem ist nämlich folgendes: Ich habe einen Win32-Service und der läuft unter dem LocalSystem-Account ( SYSTEM ). Nun will ich aber wissen, ob ein Nutzer am System angemeldet ist und wenn ja, wie er heisst. GetUserName() liefert da natürlich nur "SYSTEM" zurück.

    Wäre schön, wenn jmd einen Ansatz für mich hätte.

    Cosmixx



  • Guck mal nach LoggedOn bei den Quelltexten auf www.assarbad.org Das Tool zeigt dir alle Rechner in einer Domain und wer dort eingeloggt ist. Gibt man den eigenen Rechnernamen an funktioniert es auch. Ist allerdings in Delphi. Aber da die API's die gleichen sind, sollte es kein Problem sein es nach C(++) zu portieren.



  • 1. LsaEnumerateLogonSession um die LUUIDs der sessions zu bekommen
    2. LsaGetLogonSessionData um die Daten der jeweiligen Session abzufragen


Anmelden zum Antworten