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

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

Обработка остановки сервиса. [D7, Win2k, WinXP]


LexaTyukha ©   (2004-01-04 12:48:00) 

Добрый день!
 Исходная ситуация: есть приложение в котором работают два потока (проверяют почту, работают с базой). С помощью srvany приложение запускается как служба (под доменным аккаунтом с запретом взаимодействовать с дэсктопом). Это сделано для того что бы перелогинивания юзеров не останавливали работу программы на сервере. Такой подход работает и полностью меня устраивает.
 Суть проблемы: если сказать службе "стоп" из, скажем, управления компьютером или net stop она останавливается. НО! Событие OnClose не отрабатывается. У меня по этому событию происходит сохранение параметров и ожидание окончания работы потоков
while WaitForSingleObject(Subsys1.Handle,100)<>WAIT_OBJECT_0 do;
 Как обработать такое событие? Почему не отрабатывает onClose?

Заранее спасибо!


Digitman   (2004-01-19 16:43:00) [1]


> LexaTyukha


ерундой со всякими там srvany (понятия не имею что это такое) не занимайся

если хочешь получить полноценное сервис-приложение, разработай/переделай его на базе TServiceApplication

никаких проблем не будет - все наглядно и прозрачно


LexaTyukha   (2004-01-19 14:58:00) [2]

2zapped Пробовал, не получается. Похоже что винда посылает что-то типа TerminateThisProgrammWithoutAnyPromt...
Может нужно отлавливать это сообщение и реагировать на него?


zapped   (2004-01-17 13:08:00) [3]

2Digitman ©   (15.01.04 10:33) [2]
С помощью srvany приложениезапускается как служба,
наверное, здесь собака зарыта...

2LexaTyukha
мож, OnDestroyсрабатывает?


Digitman   (2004-01-15 10:33:00) [4]


> Событие OnClose не отрабатывается


что за OnClose() ? ни TServiceApplication ни TService не имеют такого события


LexaTyukha   (2004-01-15 09:55:00) [5]

Жаль что никто не знает...


Наверх

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