Вниз
Скачать: CL | DM;

Пара вопросов по учетным записям и процессам   Найти похожие ветки 

← →
Blasphemie ©   (2008-12-21 18:47) [0]

Доброе время суток!
Есть несколько вопросов по учетным записям и процессам в ХР/2003:
При нескольких локально залогиненных в системе юзерах (Fast User switching) - как узнать ID активного юзера? Т.е., того, чей десктоп сейчас активен.
Как узнать "хозяина процесса", т.е. от имени какого юзера он запущен?
И еще вопрос: как отловить событие "fast user switchung" не в момент Lock Windows, а в момент, когда юзер становится активным, т.е. переключается на свой десктоп?


← →
Psycho ©   (2008-12-25 23:34) [1]

неужели никто не знает?.. мне это тоже интересно


← →
Ляпа   (2008-12-30 15:43) [2]

http://forum.sources.ru/index.php?showtopic=243190&hl=
?


← →
kami ©   (2008-12-30 17:40) [3]

> [2] Ляпа   (30.12.08 15:43)

Не совсем то.
afair, GetActiveConsoleSessionID возвратит ID первого локально залогинившегося пользователя. Что при FUS будет не совсем правильно.

function GetProcessUserInformation(ProcessId: DWORD;
 var UserName, Domain: string; var SIDName: SID_NAME_USE): Boolean;
//(C) вроде И.Ш. (не помню точно, но не мое)
var
 TokenSid: PSID;
begin
 Result := false;
 if not GetProcessTokenSid(ProcessId, TokenSid) then
   Exit;
 try
   Result := GetSidInfo(nil, TokenSid, UserName, Domain, SIDName);
 finally
   ReallocMem(TokenSid, 0);
 end;
end;


Чуть посмотрев по MSDN:
для обычного приложения - использовать WTSRegisterSessionNotification.
для сервиса - HandlerEx.
И вроде будет счастье.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
2-1263067969
novichek
2010-01-09 23:12
2010.03.14
определение максимально размера шрифта


2-1263305551
Б
2010-01-12 17:12
2010.03.14
Функция ExtEscape. Применение?


15-1261737888
Piter
2009-12-25 13:44
2010.03.14
Попросили помочь убрать AdWare


2-1262865203
V
2010-01-07 14:53
2010.03.14
Как быстро и красиво отрисовать огромный битмап?


11-1214122344
Дмитрий
2008-06-22 12:12
2010.03.14
Работа с png




   Наверх