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

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

 
Донской   (2004-11-30 17:12) [0]

День добрый!!
какая процедура обработчика сообщений есть у сервиса?
Обычное оконное приложение имеет процедуру wndproc, это я знаю.
Я пишу сервис, и он должен обработать сообщение broadcastsystemmessage от другого приложения.
Спасибо!!!


 
Digitman ©   (2004-11-30 17:21) [1]


> какая процедура обработчика сообщений есть у сервиса?


смотря что под "сервисом" подразумевается : то ли сервис-процесс как объект, то ли конкретный сервис как объект в составе сервис-процесса как объекта ... ведь сервис-процесс может создавать и контролировать более чем один сервис-объект ...


 
Digitman ©   (2004-11-30 17:27) [2]

другой вопрос, что каждый сервис в составе сервис-процесса. его создающего, работает в контексте отдельного трэда.

а трэд, как известно, способен иметь и обрабатывать (в классическом порядке) собственную (индивидуальную) очередь сообщений, адресованных как самому трэду, так и окнам, созданным этим трэдом


 
Донской   (2004-11-30 17:38) [3]

речь идет о том приложении, которое создается средствами дельфи, если пойти в меню/файл/новое/service application.


 
Digitman ©   (2004-12-01 08:27) [4]


> Донской   (30.11.04 17:38) [3]


неважно какими средствами создается сервис.
любой сервис-процесс имеет основной трэд и как минимум по одному дополнительному трэду на каждый отдельный сервис, реализуемый этим процессом.

вот в этом доп.трэде (тот самый , что ты видишь под именем класса TServiceThread) в обработчике OnExecute и следует организовать цикл ожидания/выборки/диспетчеризации сообщений, а само окно создавать/уничтожать либо здесь же, в  OnExecute, либо в обработчиках событий OnStart/OnStop соответственно.


 
Донской   (2004-12-01 09:12) [5]

Я организовал создание окна в обработчике события onstart, окно имеет процедуру wndproc, в которой я и проверяю получение нужного мне сообщения. если это не оно, вызываю inherited,
но почему-то сообщения вообще не отлавливаются.

прошу прощения у админов, получилось так, что два моих топика сошлись к одному и тому же и выглядят теперь как флуд.



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

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



Память: 0.46 MB
Время: 0.022 c
14-1104910059
_student
2005-01-05 10:27
2005.01.23
Срочно надо инфу с http://delphiworld.ru/


14-1104780262
Zacho
2005-01-03 22:24
2005.01.23
Мистика, ужасы и т.п.


1-1105609595
Игорь нтк
2005-01-13 12:46
2005.01.23
DB Radiogroup


14-1104495124
Rock2015
2004-12-31 15:12
2005.01.23
Javascript


1-1105451656
Quiii
2005-01-11 16:54
2005.01.23
kak zakrit formu esli v forme onclose zapisano - action:=caNone;




   Наверх