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

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

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

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

Любые идеи?


person Rob Stevenson-Leggett    schedule 24.02.2009    source источник
comment
Добавили ли вы в свой проект установщик для этой службы?   -  person okutane    schedule 24.02.2009
comment
Нет, но в статье об этом не говорится - я попробую.   -  person Rob Stevenson-Leggett    schedule 24.02.2009
comment
Да, это все, если вы опубликуете это в качестве ответа, я дам вам свой голос.   -  person Rob Stevenson-Leggett    schedule 24.02.2009


Ответы (3)


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

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

person Rune Grimstad    schedule 24.02.2009
comment
Я только что заметил, что вы решили свою проблему. Я оставлю свой ответ на случай, если у кого-то такая же проблема. - person Rune Grimstad; 24.02.2009
comment
Что ж, пока Дмитрий Матвеев не опубликует свой ответ (в комментариях он сказал то же, что и вы), вы правы. - person Rob Stevenson-Leggett; 24.02.2009

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

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

введите описание изображения здесь

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

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

person Michael Paulukonis    schedule 05.10.2011

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

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

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

person RBerteig    schedule 24.02.2009
comment
Это нормально. Я разместил его там главным образом потому, что до сих пор никто не ответил, и это, по крайней мере, полностью проработанный пример, целью которого было задокументировать отношения между сервисом и SCM. - person RBerteig; 24.02.2009