2014-02-02 4 views
0

Несколько лет назад я разработал сервис Windows. Текущая версия использует VS2010, а в проекте установлен установщик услуг. Все работает, и последнее опубликованное мной выступление состоялось в начале 2013 года (около года назад).Windows Service Installer .NET

Я внес значительные изменения в проект и попытался опубликовать, однако полученный файл setup.exe, похоже, не является установщиком служб, так как при запуске он не регистрирует службу и ошибки со следующим сообщением:

«Не удается запустить службу из командной строки или отладчика. Сначала необходимо установить службу Windows (с помощью installutl.exe), а затем запустить с помощью ServerExplorer, инструмента администрирования служб Windows или команды NET START. '

Теперь, прежде чем вы перейдете к нам, это простой вопрос (я надеюсь, что это что-то глупое), я следил за приведенными ниже ссылками на «T», установщик настроен как служба, а ServiceName соответствует программный класс и установщик.

http://msdn.microsoft.com/en-us/library/ddhy0byf(v=vs.110).aspx

http://msdn.microsoft.com/en-us/library/zt39148a%28v=vs.100%29.aspx

Кроме того, я попытался следующие:

  • Загруженный проект в VS2012 - Все та же ошибка
  • создал новую пустую службу, выполнив описанные выше шаги для добавьте установщик. Опять же, это вызвало ту же ошибку, поэтому проект не может быть сухим.

Есть ли идеи, что может быть проблемой, или свойствами/настройками для проверки? Я помню, когда я использовал VS2008, установщик был настроен как отдельный проект. Я мог бы спуститься по этому маршруту, но мне очень хотелось бы узнать, что происходит с этим методом.

+0

Корпорация Майкрософт не указала тип проекта установщика Windows в Visual Studio 2012. Они обеспечивают установку Shield LE как своего рода замену, но она не работает одинаково и во многих случаях не выполняет одни и те же задачи. –

+0

О нет, это мое решение для резервного копирования: | – Radderz

+0

Не могли бы вы немного объяснить свой сценарий - вы указываете установку exe, но сообщение об ошибке означает, что вы работаете в среде IDE? Насколько я знаю (далеко не исчерпывающий) вы не можете отлаживать сервис как таковой. Когда я писал последнюю услугу, я добавил еще один проект для запуска, чтобы разрешить отладку во время выполнения, в сочетании с обильным протоколированием журнала событий при тестировании полностью установленной службы. –

ответ

0

Это оказалось проблемой установщика. Как сказал @ErikTheViking, встроенный установщик устарел, и, хотя я все еще имел его в своем проекте, он прекратил работать правильно для установки сервисов.

Мне удалось обойти это, используя сторонний набор инструментов установщика a WiX.

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