Как узнать Имя пользователя из сервиса Windows NT/2000/XP
От: BeastInXmel Россия  
Дата: 03.10.06 04:27
Оценка:
Вот столкнулся с проблемой: написан сервис под Windows NT/2000/XP, в сервисе необходимо узнавать правильное имя пользователя работающего на компьютере. Причё возможен такой вариант, что за одним компьютером по очереди работают несколько пользователей. Подскажите как узнать имя пользователя активног, так как пользователи могут сделать не LogOff, а Switch User.
Re: Как узнать Имя пользователя из сервиса Windows NT/2000/X
От: Аноним  
Дата: 03.10.06 11:24
Оценка:
BIX>Вот столкнулся с проблемой: написан сервис под Windows NT/2000/XP, в сервисе необходимо узнавать правильное имя пользователя работающего на компьютере. Причё возможен такой вариант, что за одним компьютером по очереди работают несколько пользователей. Подскажите как узнать имя пользователя активног, так как пользователи могут сделать не LogOff, а Switch User.

Заметьте что в Win32 возможен еще и такой вариант когда за компьютером работают _одновременно_ несколько пользователей
Re[2]: Как узнать Имя пользователя из сервиса Windows NT/200
От: BeastInXmel Россия  
Дата: 04.10.06 09:48
Оценка:
Да в этом то и проблема, что нужно знать имя пользователя того, кто в данный момент работает за машиной.
Но есть также фитча как управление удалённым рабочим столом, но этот вариант даже не рассматривается.
Re[3]: Как узнать Имя пользователя из сервиса Windows NT/200
От: Аноним  
Дата: 24.10.06 15:27
Оценка:
Здравствуйте, BeastInXmel, Вы писали:

BIX>Да в этом то и проблема, что нужно знать имя пользователя того, кто в данный момент работает за машиной.


Вам наменули о том, что нельзя получить имя текущего пользователя, т.к. одновременно работающих пользователей может быть несколько.

GetUserName() — пользователь, от имени которого сервис запущен.
WTSQuerySessionInformation() с флагом WTSUserName — имя пользователя текущей сессии.
WTSEnumerateSessions() — возвращает информацию о всех текущих сессиях.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.