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

Вниз

Сообщения Windows   Найти похожие ветки 

 
Spieler   (2006-02-20 18:14) [0]

Здраствуйте.
Есть служба Windows, которая начинает работу до входа пользователя в операционную систему.
Как отловить, вход в систему пользователя?


 
clickmaker ©   (2006-02-20 18:20) [1]

как вариант FindWindow("Progman", nil) <> 0 по таймеру


 
Spieler   (2006-02-20 18:43) [2]

:) Пасиб!


 
Spieler   (2006-02-20 18:49) [3]

А все-таки нет ли сообщений Windows, оповещающих всех и вся, что пользователь "залогинился"?


 
Fay ©   (2006-02-20 19:48) [4]

WM_USERCHANGED
Ку?


 
Spieler   (2006-02-21 08:33) [5]

Ку!


 
Spieler   (2006-02-21 10:28) [6]

Не отлавливает моя служба WM_USERCHANGED :(
Ловлю сообщение
procedure UserChanged(var Message: TMessage); message WM_USERCHANGED на форме.
WndProc его тоже не ловит.
Где и как надо ловить WM_USERCHANGED?


 
umbra ©   (2006-02-21 10:38) [7]

чтобы форма ловила сообщения, e нее должно быть Enabled = True. А для службы все сообщения, по-моему, надо обрабатывать в обработчике Application.OnMessage


 
Spieler   (2006-02-21 10:45) [8]

У TServiceApplication я не видел обработчика OnMessage ...
А за Enabled = True - спасибо попробую :)


 
Spieler   (2006-02-21 11:29) [9]

Не ловит служба WM_USERCHANGED и все тут :"(


 
clickmaker ©   (2006-02-21 11:57) [10]


> Spieler   (21.02.06 11:29) [9]

чтоб служба ловила сообщения, она должна быть интерактивной


 
Spieler   (2006-02-21 12:11) [11]

Служба интерактивная.
Служба ловит сообщения!!! WM_ENDSESSION она отлавливает!!!
А WM_USERCHANGED - нет...


 
umbra ©   (2006-02-21 12:20) [12]

WM_USERCHANGED посылается окнам, которых у службы нет. WM_ENDSESSION посылается приложениям (не окнам)


 
Spieler   (2006-02-21 12:27) [13]

Т.е. служба не может узнать о том, что пользователь совершил лог ин/аут, используя сообщения Windows?


 
umbra ©   (2006-02-21 12:40) [14]

похоже на то. Лучше копать в сторону функции LsaEnumerateLogonSessions (MSDN).


 
clickmaker ©   (2006-02-21 12:41) [15]

можно попробовать через RegisterWindowMessage("TaskbarCreated"



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

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

Наверх




Память: 0.49 MB
Время: 0.051 c
15-1140366549
Fenik]
2006-02-19 19:29
2006.03.12
Ищу варган


15-1140191596
Vendict
2006-02-17 18:53
2006.03.12
Передача параметра процедуре по ссылке в ассемблере


3-1137255604
maxxa144
2006-01-14 19:20
2006.03.12
альтернатива array полям.


2-1140881753
13
2006-02-25 18:35
2006.03.12
иконки в DLL


15-1140016954
Хинт
2006-02-15 18:22
2006.03.12
Проблема с Indy10