![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обработка остановки сервиса. [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]Жаль что никто не знает...