Трабла с сервисами
От: Аноним  
Дата: 18.07.05 12:40
Оценка:
Есть некоторое приложение N — работающее как сервис, которое использует функции из библиотеки M(.dll — набор функций для работы с USB брелком). В комплект библиотеки M входит приложение L — работающее, также, как сервис (его назначение просто — уведомлять приложение N о вставлении/изъятии USB брелка). Использование брелка — опционально и когда в нём нет необходимости, библиотека M вместе с приложением L отсутствует вовсе. Но так приложение N без приложения L вообще не стартует, хотя теперь N и не использует не единой ф-ции из M и в уведомлениях сервиса L не нуждается. Т.е. SCM устанавливает неявную зависимость сервиса N от сервиса L, так ли это? Если да, то есть ли возможность избавится от этой зависимости с наименьшим переписыванием кода?
Re: Трабла с сервисами
От: Dmitry Fleytman Украина  
Дата: 18.07.05 14:41
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Есть некоторое приложение N — работающее как сервис, которое использует функции из библиотеки M(.dll — набор функций для работы с USB брелком). В комплект библиотеки M входит приложение L — работающее, также, как сервис (его назначение просто — уведомлять приложение N о вставлении/изъятии USB брелка). Использование брелка — опционально и когда в нём нет необходимости, библиотека M вместе с приложением L отсутствует вовсе. Но так приложение N без приложения L вообще не стартует, хотя теперь N и не использует не единой ф-ции из M и в уведомлениях сервиса L не нуждается. Т.е. SCM устанавливает неявную зависимость сервиса N от сервиса L, так ли это? Если да, то есть ли возможность избавится от этой зависимости с наименьшим переписыванием кода?


Просто так SCM никаких зависимостей не устанавливает, возможно зависимости явно прописываются при вызове CreateService(). Список зависимостей можно посмотреть через свойства сервиса в Control Panel->Administrative tools->Services.
Re[2]: Трабла с сервисами
От: Аноним  
Дата: 19.07.05 07:29
Оценка:
Здравствуйте, Dmitry Fleytman, Вы писали:

DF>Здравствуйте, Аноним, Вы писали:


А>>Есть некоторое приложение N — работающее как сервис, которое использует функции из библиотеки M(.dll — набор функций для работы с USB брелком). В комплект библиотеки M входит приложение L — работающее, также, как сервис (его назначение просто — уведомлять приложение N о вставлении/изъятии USB брелка). Использование брелка — опционально и когда в нём нет необходимости, библиотека M вместе с приложением L отсутствует вовсе. Но так приложение N без приложения L вообще не стартует, хотя теперь N и не использует не единой ф-ции из M и в уведомлениях сервиса L не нуждается. Т.е. SCM устанавливает неявную зависимость сервиса N от сервиса L, так ли это? Если да, то есть ли возможность избавится от этой зависимости с наименьшим переписыванием кода?


DF>Просто так SCM никаких зависимостей не устанавливает, возможно зависимости явно прописываются при вызове CreateService(). Список зависимостей можно посмотреть через свойства сервиса в Control Panel->Administrative tools->Services.


Если Вы о свойствах сервиса, а в частности о его подсвойстве Dependencies, то в нём никаких явных зависимостей нет.
Re[3]: Трабла с сервисами
От: Dmitry Fleytman Украина  
Дата: 19.07.05 07:49
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Dmitry Fleytman, Вы писали:


DF>>Здравствуйте, Аноним, Вы писали:


А>>>Есть некоторое приложение N — работающее как сервис, которое использует функции из библиотеки M(.dll — набор функций для работы с USB брелком). В комплект библиотеки M входит приложение L — работающее, также, как сервис (его назначение просто — уведомлять приложение N о вставлении/изъятии USB брелка). Использование брелка — опционально и когда в нём нет необходимости, библиотека M вместе с приложением L отсутствует вовсе. Но так приложение N без приложения L вообще не стартует,



А что значит не стартует? ошибка какая-то?


хотя теперь N и не использует не единой ф-ции из M и в уведомлениях сервиса L не нуждается. Т.е. SCM устанавливает неявную зависимость сервиса N от сервиса L, так ли это? Если да, то есть ли возможность избавится от этой зависимости с наименьшим переписыванием кода?

DF>>Просто так SCM никаких зависимостей не устанавливает, возможно зависимости явно прописываются при вызове CreateService(). Список зависимостей можно посмотреть через свойства сервиса в Control Panel->Administrative tools->Services.


А>Если Вы о свойствах сервиса, а в частности о его подсвойстве Dependencies, то в нём никаких явных зависимостей нет.
Re[4]: Трабла с сервисами
От: Аноним  
Дата: 19.07.05 09:46
Оценка:
Здравствуйте, Dmitry Fleytman, Вы писали:

DF>Здравствуйте, Аноним, Вы писали:


А>>Здравствуйте, Dmitry Fleytman, Вы писали:


DF>>>Здравствуйте, Аноним, Вы писали:


А>>>>Есть некоторое приложение N — работающее как сервис, которое использует функции из библиотеки M(.dll — набор функций для работы с USB брелком). В комплект библиотеки M входит приложение L — работающее, также, как сервис (его назначение просто — уведомлять приложение N о вставлении/изъятии USB брелка). Использование брелка — опционально и когда в нём нет необходимости, библиотека M вместе с приложением L отсутствует вовсе. Но так приложение N без приложения L вообще не стартует,



DF>А что значит не стартует? ошибка какая-то?



DF>хотя теперь N и не использует не единой ф-ции из M и в уведомлениях сервиса L не нуждается. Т.е. SCM устанавливает неявную зависимость сервиса N от сервиса L, так ли это? Если да, то есть ли возможность избавится от этой зависимости с наименьшим переписыванием кода?


DF>>>Просто так SCM никаких зависимостей не устанавливает, возможно зависимости явно прописываются при вызове CreateService(). Список зависимостей можно посмотреть через свойства сервиса в Control Panel->Administrative tools->Services.


А>>Если Вы о свойствах сервиса, а в частности о его подсвойстве Dependencies, то в нём никаких явных зависимостей нет.


Когда сервиса L нет (т.е. вообще снесён с компьютера вместе с библиотекой M) сервис N пытается запустится и отваливается по ошибке (код 1053:
The service did not respond to the start or control request in a timely fashion. по таймауту короче). С Тем фактом, что сервису N нужен сервис L я уже смирился, вот теперь думаю как бы их развязать-то (когда нет необходимости в библиотеке M с сервисом L — апликуха N работает автономно и не лезет на поиски сервиса L)?

any ideas?
Re[5]: Трабла с сервисами
От: Dmitry Fleytman Украина  
Дата: 19.07.05 15:00
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Dmitry Fleytman, Вы писали:


DF>>Здравствуйте, Аноним, Вы писали:


А>>>Здравствуйте, Dmitry Fleytman, Вы писали:


DF>>>>Здравствуйте, Аноним, Вы писали:


А>>>>>Есть некоторое приложение N — работающее как сервис, которое использует функции из библиотеки M(.dll — набор функций для работы с USB брелком). В комплект библиотеки M входит приложение L — работающее, также, как сервис (его назначение просто — уведомлять приложение N о вставлении/изъятии USB брелка). Использование брелка — опционально и когда в нём нет необходимости, библиотека M вместе с приложением L отсутствует вовсе. Но так приложение N без приложения L вообще не стартует,



DF>>А что значит не стартует? ошибка какая-то?



DF>>хотя теперь N и не использует не единой ф-ции из M и в уведомлениях сервиса L не нуждается. Т.е. SCM устанавливает неявную зависимость сервиса N от сервиса L, так ли это? Если да, то есть ли возможность избавится от этой зависимости с наименьшим переписыванием кода?


DF>>>>Просто так SCM никаких зависимостей не устанавливает, возможно зависимости явно прописываются при вызове CreateService(). Список зависимостей можно посмотреть через свойства сервиса в Control Panel->Administrative tools->Services.


А>>>Если Вы о свойствах сервиса, а в частности о его подсвойстве Dependencies, то в нём никаких явных зависимостей нет.


А>Когда сервиса L нет (т.е. вообще снесён с компьютера вместе с библиотекой M) сервис N пытается запустится и отваливается по ошибке (код 1053:

А>The service did not respond to the start or control request in a timely fashion. по таймауту короче). С Тем фактом, что сервису N нужен сервис L я уже смирился, вот теперь думаю как бы их развязать-то (когда нет необходимости в библиотеке M с сервисом L — апликуха N работает автономно и не лезет на поиски сервиса L)?

А>any ideas?



Ну, ежели есть исходники — нужно (как ни странно) дебажить, иначе никак
Re[5]: Трабла с сервисами
От: Signatec Россия  
Дата: 20.07.05 03:48
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Когда сервиса L нет (т.е. вообще снесён с компьютера вместе с библиотекой M) сервис N пытается запустится и отваливается по ошибке (код 1053:

А>The service did not respond to the start or control request in a timely fashion. по таймауту короче). С Тем фактом, что сервису N нужен сервис L я уже смирился, вот теперь думаю как бы их развязать-то (когда нет необходимости в библиотеке M с сервисом L — апликуха N работает автономно и не лезет на поиски сервиса L)?

Разрешите сервису взаимодействие с рабочим столом. Возможно выскакивет диалог с сообщением об ошибке.
И ещё. Библиотека M, может из-за неё? Может если нет сервиса L, то и M нет, или она не работает/не грузится?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.