|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
|
m1nder |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Здравствуйте! Подскажите как мне корректно завершить службу. Допустим есть простенький код:
Если вручную завершать службу, то она вылетает с ошибкой, я понимаю, что нужно обработать остановку, но вот только как? Заранее благодарю! |
|||
|
||||
Virtuals |
|
|||
Опытный Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 4 Всего: 11 |
m1nder, ничего непонятно, показывай код полностью!.
а так
|
|||
|
||||
m1nder |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Программа сравнивает файлы по датам каждые 10 сек и если они разные - переписывает. Проблемка с остановкой службы. Как корректно остановить службу и завершить ее?
Модератор: не забываем использовать кнопку КОД Это сообщение отредактировал(а) bems - 28.9.2009, 12:24 |
|||
|
||||
CodeMonkey |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 16 Всего: 89 |
Что ЭТО?
-------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
Virtuals |
|
||||||
Опытный Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 4 Всего: 11 |
CodeMonkey, это его сервис сам себя в "прошлое" отправляет .
m1nder, ты блин зачем основной поток сервиса вообще трогаеш?. в ServiceExecute ты должен инициализировать все что нужно, и выполнять свое грязное дело внутри цикла
а то что у тебя отрабатывает 1 раз и все. в идеале, ServiceExecute вообще не трогают а отрабатывают по сообщениям
тоесть в отдельном потоке. ЗЫ имхо сделай для начала свою процедуру отдельным потоком (и отлаживать легче будет) типа
а потом уже в сервисы лезь. |
||||||
|
|||||||
m1nder |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Пробовал по всякому, не получается нормальной работы со службой. Virtuals, подскажи как правильно
в цикл сунуть или как это при помощи потоков сделать. Подскажите поподробнее, пожалуйста. |
|||
|
||||
CodeMonkey |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 16 Всего: 89 |
Тынц.
-------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
Keeper89 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 2580 Регистрация: 26.2.2009 Репутация: 14 Всего: 58 |
У CodeMonkey на все случаи жизни статьи есть
|
|||
|
||||
m1nder |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Пробую через поток, но ничего не выходит! В чем причина?
А через OnStart и OnStop у меня не получается. Пробовал по всякому, иногда запускаешь службу - процесс выполняется, а служба не стартует и выснет. А через Execute цикл While not Terminated do отрабатывает 1 раз. Напишите мне пару строк как сделать и забыть, там же много кода не нужно, заодно я разберусь. |
|||
|
||||
CodeMonkey |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 16 Всего: 89 |
Эх, ещё один шедевр.
Что, по-вашему, должна делать служба, если её Execute-тело заканчивается? Да ни черта вы не разберётесь вы, а втупую запомните пример. Учитесь мыслить и делать выводы самостоятельно. Вам это ничто не заменит. Пример несложного мозгового упражнения. Написано:
Внимание, наводящий вопрос: нафига вы назначили OnExecute, если в нём вы создаёте поток? Право же, это несложно. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
m1nder |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Всем огромное спасибо!!! Особенно Вам, CodeMonkey! Написал наконец свою программу +) оказалось все просто. Выложу код, вдруг кому понадобится:
|
|||
|
||||
Virtuals |
|
||||
Опытный Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 4 Всего: 11 |
m1nder, ну нафига sleep(5000); // 5 сек внутри цикла?
статью внимательней читай.
|
||||
|
|||||
papweilm |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 28.11.2022 Репутация: нет Всего: нет |
Модератор: Сообщение скрыто. |
|||
|
||||
saiple |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 22.11.2022 Репутация: нет Всего: нет |
levitra 10 mg reviews <a href=" https://levitraoffer.com/# ">what is vardenafil 20mg</a> buy generic levitra online
|
|||
|
||||
saiple |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 22.11.2022 Репутация: нет Всего: нет |
what is levitra used for <a href=" https://levitraoffer.com/# ">levitra pills men</a> levitra 20 mg film coated tablets
|
|||
|
||||
saiple |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 22.11.2022 Репутация: нет Всего: нет |
levitra online purchase <a href=" https://levitrair.com/# ">vardenafil hcl 20mg tablet</a> levitra pills men
|
|||
|
||||
Правила форума "Delphi: WinAPI и системное программирование" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |