Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.07;
Скачать: CL | DM;

Вниз

Сервис   Найти похожие ветки 

 
Darkwin ©   (2003-02-12 18:48) [0]

Как в своём сервисе можно понять, что был выполнен выход из системы, а за тем вход, или смена пользователя?


 
Набережных С.   (2003-02-12 23:45) [1]

Функцией SetConsoleCtrlHandler регистрируешь функцию обратного вызова типа

function CtrlHandler(CtrlCode: DWord): bool; stdcall;

При закрытии сессии она будет вызвана с
CtrlCode = CTRL_LOGOFF_EVENT.
Причем дважды - перед самым закрытием и сразу после. Есть ли интерактивный юзер в текущий момент можно узнать по, например, длине SID юзера интерактивной станции.


 
Diamond Cat ©   (2003-02-13 00:39) [2]

сообщение WM_USERCHANGED посылается всем окнам при смене юзера


 
Набережных С.   (2003-02-13 05:58) [3]

>Diamond Cat © (13.02.03 00:39)

Ты о чем?


 
Набережных С.   (2003-02-14 08:31) [4]

>Diamond Cat ©

Понятно. Март приближается...


 
Овчинников Денис   (2003-02-14 09:49) [5]

>Diamond Cat

Под NT/Win2k это сообщение не поддерживается (так написано в MSDN)


 
Овчинников Денис   (2003-02-14 09:50) [6]

>Набережных С

А если приложение не консольного типа?


 
Набережных С.   (2003-02-14 09:56) [7]

>Овчинников Денис

Не важно.


 
Darkwin ©   (2003-02-14 12:54) [8]


> Набережных С. (12.02.03 23:45)

Спасибо за подробное объяснение.
А как узнать этот SID?


 
Набережных С.   (2003-02-14 17:34) [9]

Получать SID не обязательно, достаточно проверить требуемый под него размер буфера. Что-то типа этого:


Sz: DWORD;
hWSta: THandle;

Sz:=0;
hWSta:=OpenWindowStation("WinSta0",false,WINSTA_READATTRIBUTES);
if GetUserObjectInformation(hWSta,UOI_USER_SID,nil,0,Sz) then
// интерактивного юзера нет
else if GetLastError = ERROR_INSUFFICIENT_BUFFER then
// интерактивный юзер есть
else - что-то не так
CloseWindowStation(hWSta);



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

Текущий архив: 2003.04.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
6-19715
Карелин Артем
2003-02-14 10:06
2003.04.07
NMUDP. Есть вопросы.


1-19540
msoftware
2003-03-24 17:51
2003.04.07
Вопрос по RXLIB


8-19706
kuzia
2002-12-28 14:12
2003.04.07
Создание .avi из содержымого экрана


3-19478
SergeN
2003-03-19 10:52
2003.04.07
SQL


3-19445
новый
2003-03-18 16:06
2003.04.07
Как в IB(FireBird) узнать версию билда?