0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 7
|
||||||
1 | ||||||
ATL Service и переодическая задача18.07.2013, 09:08. Показов 1578. Ответов 11
Метки нет (Все метки)
Необходимо написать сервис для вин, использую для этой цели шаблон в VS2010(С++, АТЛ).
Переопределяю события(при старте, паузе...) - всё ок. Реализую нужный функционал. Как реализовать периодическое выполнение некоторого кода? Если при старте делать бесконечный цикл, то сервис не запускается( видимо необходимо окончание метода пристарте). Пробовал сделать так:
Добавлено через 16 часов 49 минут всё ещё актуально
0
|
18.07.2013, 09:08 | |
Ответы с готовыми решениями:
11
A Windows service with the name MySQL already exists. Please uninstall this service correctly or choose a different name for the new service. Переодическая реклама в Хроме Переодическая выборка через JS Переодическая очистка многих TextBox |
106 / 87 / 13
Регистрация: 29.08.2012
Сообщений: 539
|
|
18.07.2013, 11:37 | 2 |
событие поставить не?
0
|
Ушел с форума
|
|
18.07.2013, 11:55 | 3 |
0
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 7
|
||||||
18.07.2013, 14:31 [ТС] | 4 | |||||
Если в событии ожидать завершения функции, которая выполняется в созданном потоке, сервис не стартанёт и сообщит "Служба не ответила на запрос своевременно".
0
|
Ушел с форума
|
|
18.07.2013, 14:39 | 5 |
Так а где сама функция ThreadFunc ? Хочу посмотреть ее объявление.
0
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 7
|
|||||||||||
18.07.2013, 14:54 [ТС] | 6 | ||||||||||
0
|
Ушел с форума
|
||||||
18.07.2013, 15:00 | 7 | |||||
Неправильная сигнатура.
Должно быть так:
0
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 7
|
||||||
18.07.2013, 15:39 [ТС] | 8 | |||||
Проблему не решило
если раскоментировать //WaitForSingleObject(threadHandle,INFINITE);, сервис не стартует и выдаст ошибку.(при этом функция в потоке будет выполняться до снятия задачи в диспетчере)
0
|
Ушел с форума
|
|
18.07.2013, 15:53 | 9 |
Вы поменяли сигнатуру ThreadFunc или нет ?
0
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 7
|
|
18.07.2013, 16:03 [ТС] | 10 |
да, изменил
0
|
Ушел с форума
|
|
18.07.2013, 16:18 | 11 |
Ок. А как сервис регистрируется в системе ?
И как Вы его запускаете ? Можете описать последовательность действий ?
0
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 7
|
|
19.07.2013, 12:12 [ТС] | 12 |
Регистрация: в консоле пишу Auditor.exe /Service
Запуск: в управлении компьютером открываю службы, выбираю из списка, запускаю Добавлено через 6 минут Выполнить некоторую задачу в сервисе могу(подставив её в событие при старте), но не пойму как сделать периодическую задачу. При попытке использовать бесконечный цикл в событии при старте получаю ошибку. При попытке сделать 2й поток и в нём выполнять цикл возникает проблема, что поток создаётся и сразу же после этого завершается. Как сделать так, что бы "при старте" завершилось, но сервис продолжал работать пока существует 2й поток? Добавлено через 18 часов 49 минут up!
0
|
19.07.2013, 12:12 | |
19.07.2013, 12:12 | |
Помогаю со студенческими работами здесь
12
Переодическая ошибка при выполнении агента Олицетворение (impersonating) системных учетных записей (NETWORK SERVICE, LOCAL SERVICE и пр.) The Lotus Domino Server Service Terminated With Service-specific Error Сервер не заходит с никакой учётные запись кроме Administrator (The User Profile Service service failed) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |