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

Вниз

Обмен сообщениями внутри сервиса   Найти похожие ветки 

 
AlexanderSK   (2004-07-29 13:59) [0]

Разрабатываю сервис для Win2k. Форм он не имеет, но внутри него нужно реализовать обработку сообщений, посылаемых из других модулей этого же приложения. Подскажите, пожалуйста, как это лучше реализовать?

Заранее благодарен!


 
Digitman ©   (2004-07-29 14:11) [1]

посылай сообщения трэду  сервиса, например,вызовом PostThreadMessage() .. ID трэда сервиса хранится в св-ве TService.ServiceThread.ThreadId

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

var
 Msg: TMsg;
begin
 while not Terminated do
   begin
     WaitMessage;
     if PeekMessage(Msg, 0, SM_CONTROL, SM_CONTROL, PM_REMOVE) then
       Dispatch(Msg.Message)
     else
       ServiceThread.ProcessRequests(False);
   end;


 
GanibalLector ©   (2004-07-30 01:50) [2]

RegisterWindowMessage



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

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

Наверх




Память: 0.47 MB
Время: 0.048 c
4-1091092419
Morphin
2004-07-29 13:13
2004.09.12
Ограничение нагрузки на CPU


1-1093502344
*Pavel
2004-08-26 10:39
2004.09.12
Скрипты


1-1093113718
Арр'акктур
2004-08-21 22:41
2004.09.12
гибрид TTreeView с TListView


1-1093175958
shc
2004-08-22 15:59
2004.09.12
Гибрид TreeView и ListView


10-1033995250
rootadmin
2002-10-07 16:54
2004.09.12
Обратные вызовы в CORBA