Der angemeldete User steckt in der Session, nicht in der Windowstation!
Zudem funktioniert das Fensterhandleauslesen nicht über Dienste. Dass es hier funktioniert liegt nur daran, dass unter XP Dienste und der erste angemeldete Benutzer sich in derselben Session 0 befinden. Über Sessiongrenzen hinweg, wie bei FUS oder Vista wird das versagen.
WTSQuerySessionInformation liefert dir mit WTSGetActiveConsoleSession den Name des am PC sitzenden, eingeloggten Benutzers. In Windows 2000 Workstation funkz das nicht. Dann müssen Ausweichroutinen her, wie z.B. in der
JWSCL.
Bitte beachten, dass mehrere Leute sich in einer Session anmelden können (z.B. runas)