Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сообщения Windows [D7, XP]


Spieler ©   (2006-02-20 18:14:00) 

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


clickmaker   (2006-02-21 12:41:00) [1]

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


umbra   (2006-02-21 12:40:00) [2]

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


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

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


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

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


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

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


clickmaker   (2006-02-21 11:57:00) [6]


> Spieler   (21.02.06 11:29) [9]

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


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

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


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

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


umbra   (2006-02-21 10:38:00) [9]

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


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

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


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

Ку!


Fay   (2006-02-20 19:48:00) [12]

WM_USERCHANGED
Ку?


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

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


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

:) Пасиб!


clickmaker   (2006-02-20 18:20:00) [15]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо