Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.042 c
4-1101888255
arki
2004-12-01 11:04
2005.01.23
EnableWindow блокировка ввода для окна


4-1101800621
Bless
2004-11-30 10:43
2005.01.23
Что означает GetDC(0)?


14-1104676368
Cobalt
2005-01-02 17:32
2005.01.23
Большие диски - большие потери.


14-1104847783
Кудесник
2005-01-04 17:09
2005.01.23
Подскажите программу для быстрый ввода символа...


14-1104917688
asdqwer
2005-01-05 12:34
2005.01.23
Реализация длинной арифметики на Паскале и с делением!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский