2012-03-26 4 views
1

У меня есть служба Windows, у которой есть имя, установленное app.config. я установить имя следующим образом:Повторяющиеся службы Windows, другое имя и местоположение - не запустится

ServiceBase.SerivceName устанавливается на классе Service конструктору (я удалил установку SERVICENAME в Service.Designer):

ServiceName = ConfigurationManager.AppSettings.Get("ServiceName"); 

ServiceInstaller устанавливает DisplayName и ServiceName как это:

ServiceInstaller.DisplayName = config.AppSettings.Settings["ServiceName"].Value; 
ServiceInstaller.ServiceName = ServiceInstaller.DisplayName; 

Все работы, как и ожидалось, поэтому служба устанавливается штраф вместе с дублирующим службы.
У них разные названия и разные места.
Отображаются как отдельные записи в списке «Службы».

Но я могу начать только одну услугу за раз. Я получаю ошибку при попытке запустить второй сервис является бесполезен:

The service is not responding to the control function. 

Есть 2 Системные события которые регистрируются при попытке запустить:

A timeout was reached (30000 milliseconds) while waiting for the Blah Service service to connect. 

The Blah Service service failed to start due to the following error: 
The service did not respond to the start or control request in a timely fashion. 

Любая помощь с благодарностью получил.

Спасибо.

+0

Что-нибудь полезное в журнале событий? Вы непреднамеренно пытаетесь поделиться не разделяемым ресурсом? –

+0

Я отредактировал вопрос и добавил 2 системных события, которые регистрируются. Поскольку службы устанавливаются из двух отдельных каталогов, я не думаю, что они делятся любыми ресурсами. Благодарю. –

+0

Я бы поместил некоторые записи в ваш OnStart и посмотрел, попадает ли он. –

ответ

2

В отсутствие достаточной информации, чтобы предложить ответ на неполадку, я предлагаю использовать http://topshelf-project.com/ - он делает установку, настройку и отладку служб Windows в .NET.

+0

Обратите внимание, что TopShelf не поддерживает несколько экземпляров Службы Windows в соответствии с их документацией. Однако не позволяйте этому останавливать вас. См. Больше здесь: http://clarify.dovetailsoftware.com/kmiller/2009/09/24/running-multiple-instances-of-a-windows-service-using-topshelf/ –

Смежные вопросы