Установка службы Windows - без ошибок, но это не происходит в диспетчере управления службами

Я создал службу Windows в C#, и я пытаюсь установить его для отладки с помощью installutil, как рекомендовано здесь: http://msdn.microsoft.com/en-us/library/sd8zc8ha.aspx

Программа установки сообщает, что установка завершена. Однако в диспетчере управления службами ничего не появляется.

Я пробовал это на Server 2008 и XP с тем же результатом.

Есть идеи?

3 ответа

Решение

У моего коллеги была более или менее идентичная проблема.

Вы добавили установщик в свой проект? Для установки службы вам необходимо добавить установщик в ваш проект Visual Studio. Самый простой способ добавить установщик в Visual Studio - открыть службу в режиме разработки, щелкнуть правой кнопкой мыши область проектирования и выбрать "Добавить установщик". Это добавит файл ProjectInstaller.cs, содержащий сам объект ServiceInstaller и объект ServiceProcessInstaller. Добавив установщик, вы можете установить имя службы, описание и другие параметры, которые будут использоваться при установке службы. Если вы сейчас попытаетесь использовать InstallUtil, ваша служба должна быть установлена ​​и должна появиться в списке служб.

У меня была похожая проблема (сборщик сборки, ошибок нет, сервис не отображается в services.msc) но другое решение, так как я настроил установщики.

В моем случае Сервис-проект Application Properties (Alt-Enter, Application-tab) Объект запуска был (not set) как показано ниже:

Выбор стандартного .Program и перестройка службы и установщика работали (служба появилась в services.msc).

Установка этого свойства является одним из шагов в пошаговом руководстве по установке службы MSDN, на которое ссылается этот ответ SO. Обязательно выполните все шаги!

Я не могу говорить конкретно о каких-либо проблемах, которые являются ошибкой C# или.NET, но у меня есть описание того, что должно произойти для установки службы и работы в форме хорошо документированной среды (включая исходный код) для написания услуг в Lua. Я предлагаю это здесь как пример другого способа сделать это, потому что иногда может быть полезно просто смотреть на вещи с другой точки зрения.

Отказ от ответственности: это очень на уровне альфа-качества, и да, я его автор.

Фреймворк имеет весь код, необходимый для взаимодействия с Windows SCM для установки и удаления службы.

Другие вопросы по тегам