protected override void OnStop() { if (service != null) { service.Dispose(); service = null; } putToSvcLog("**** Остановка Windows-службы КДС ****"); }
static void Main(string[] args) { Console.Title = "KDS SERVICE"; Console.WriteLine("*** Начало работы приложения ***"); KDSService.KDSServiceClass service = new KDSService.KDSServiceClass(); // 1. Инициализация сервисного класса KDSService try { // config file //string cfgFile = @"D:\KDSService.config"; string cfgFile = AppDomain.CurrentDomain.BaseDirectory + "KDSService.config"; Console.WriteLine("Инициализация сервисного класса KDSService..."); service.InitService(cfgFile); Console.WriteLine("Инициализация сервисного класса KDSService... Ok"); } catch (Exception ex) { Console.WriteLine("Ошибка инициализации сервисного класса: " + ex.Message); exitWithPrompt(1); } // создать и открыть канал для приема сообщений try { Console.WriteLine("Создание канала для приема сообщений..."); service.CreateHost(); DisplayHostInfo(service.ServiceHost); } catch (Exception ex) { Console.WriteLine(" ERROR: " + ex.Message); exitWithPrompt(2); } service.StartTimer(); Console.WriteLine("\nСлужба готова к приему сообщений.\nДля завершения нажмите Enter\n"); Console.ReadKey(); if (service != null) { Console.WriteLine("Закрытие служебного класса KDSService"); service.Dispose(); service = null; } Console.WriteLine("*** Завершение работы приложения ***"); }