Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.22;
Скачать: CL | DM;

Вниз

Помогите "переинициализировать" сервис   Найти похожие ветки 

 
Vlad Oshin ©   (2007-06-27 01:50) [0]

Написал сервис.
Просто по шаблону из file-new-other-service app.

Поставил на onStart считывание переменных из файла.
В теле идет работа.
Затем, файл редактирую блокнотом.
С панели администрирования рестартую сервис, но переменные остаются с прежними значениями

Почему?
на onCreate тоже ставил. И тоже, рестарт сервиса не меняет его переменных.

Меняет только удаление, перезагрузка и новая инсталляция.


 
Сергей М. ©   (2007-06-27 08:11) [1]


> переменные остаются с прежними значениями


С какими такими "прежними" ?


> рестарт сервиса не меняет его переменных


Код сервиса сам отвечает за состояние своих переменных, никто за него этим заниматься не будет.


 
Vlad Oshin ©   (2007-06-27 09:38) [2]

есть текстовый файл, формата: имя=значение, имя=значение,..

> Поставил на onStart считывание переменных из файла.

сервис стартует и читает этот файл. во всяком случае, я так задумал..
есть там, в частности, переменная отвечающая за временной интервал вывода сообщений. Ставлю ей значение, допустим, 10 сек
Вот, включил комп, запустился сервис. Каждые 10 сек имею сообщение, что все в порядке, работа идет как надо.
Захожу в текстовый файл, меняю значение на минуту. Рестартую сервис.
Сообщения продолжают идти раз в 10 сек.


> Код сервиса сам отвечает за состояние своих переменных

Вот я и спрашиваю, при рестарте onStart не выполняется?
а что выполняется?


 
clickmaker ©   (2007-06-27 09:42) [3]


> Вот я и спрашиваю, при рестарте onStart не выполняется?

выполняется.
если есть сомнения в действиях сервиса, протоколируй критический код в файловый лог. Сбрасывай туда значения прочитанных переменных, например. Потом анализируй это


 
iXT ©   (2007-06-27 09:48) [4]

1. ИМХО не надо ничего делать в основном потоке службы. Пусть он отвечает за управление службой. В Execute создавай поток в котором делай все чего тебе надо. Повторюсь ИМХО :).

2. Поставь в OnContinue


 
Vlad Oshin ©   (2007-06-27 09:53) [5]

спасибо
как всегда, слона и не увидел
не тот файл правил


 
Сергей М. ©   (2007-06-27 11:26) [6]


> не тот файл правил


Тот ты правил или не тот, но в файле нет никаких "переменных".
Переменные есть в тексте программы.


 
koha ©   (2007-06-27 21:24) [7]


> Vlad Oshin ©   (27.06.07 09:53) [5]
> спасибокак всегда, слона и не увиделне тот файл правил


- или не тот файл правил. onStart выполняется один раз при старте а не все время и читать будет твой файл тоже будет один раз при старте.
можно таймер положить и выполнять его или как выше товарищь писал:
> iXT ©   (27.06.07 09:48) [4]


 
Vlad Oshin ©   (2007-06-29 16:35) [8]


> Тот ты правил или не тот, но в файле нет никаких "переменных".
>
> Переменные есть в тексте программы.

понятно: нет ложки..
есть 01
а текст программмы тоже хранится в файле.

clickmaker ©   (27.06.07 09:42) [3]
спасибо!
первые же записи в логе все показали



Страницы: 1 вся ветка

Текущий архив: 2007.07.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.031 c
2-1182967542
MASReady
2007-06-27 22:05
2007.07.22
Механизм работы post в BDE и в ADO, помогите разобраться


15-1182241477
Makhanev Alexander
2007-06-19 12:24
2007.07.22
Заюзать общие conditional parameters...


2-1182965649
mc0808
2007-06-27 21:34
2007.07.22
Программа не запускается на машине без Дельфи


9-1156110789
Normal
2006-08-21 01:53
2007.07.22
Какие существуют способы вычисления нормалей?


3-1176452864
Nike
2007-04-13 12:27
2007.07.22
отображение DBGrid при пустом датасете