Главная страница
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.024 c
14-1093464569
NailMan
2004-08-26 00:09
2004.09.12
Генератор имен


6-1089289830
s_ser
2004-07-08 16:30
2004.09.12
Выполнение команд в консоли (для Linuxa)


8-1087797092
hogo
2004-06-21 09:51
2004.09.12
Timage


14-1093259511
Jenek
2004-08-23 15:11
2004.09.12
Поместить программу в меню Windows


1-1093426792
Sectey
2004-08-25 13:39
2004.09.12
Помогите разобраться с ошибкой Invalid variant type