Как установить управляемый сервис из WiX? - PullRequest
1 голос
/ 19 ноября 2010

Возможно / рекомендуется использовать элемент InstallService для установки службы Windows, написанной в управляемом коде (C #)? (Я пробовал, и он устанавливает службу, но служба не запускается)

Или для этого требуется настраиваемое действие, которое вызывает Installutil?

Или есть другой способ сделать это?

Ответы [ 2 ]

3 голосов
/ 21 ноября 2010

Я сейчас изучаю wix и только что смог установить / удалить управляемую службу с помощью стандартного способа ServiceInstall / ServiceControl (и почему бы и нет, если мы можем просто использовать sc для Это). Из того, что я прочитал и с чем согласен, использование пользовательского задания с installutil считается плохой практикой : Раньше я устанавливал счетчики производительности в моем инсталляторе .net, но теперь я просто пойду wix для него .

Кстати, мне пришлось добавить элемент ServiceControl, чтобы служба запускалась после установки (атрибут Start) и, что более важно для меня, полностью удалялась во время удаления (атрибут Remove).

  <ServiceControl Id='ControlStansWinService' Remove='both' Name='StansWinService' Start='install' Stop='both' Wait='yes' />

Я уже опубликовал свои выводы здесь , надеюсь, вы найдете его полезным.

0 голосов
/ 21 ноября 2010

Вам следует использовать элемент WIX InstallService, поскольку он выполняет всю работу по установке службы, а также запуска и остановки / удаления службы при установке и удалении.Если вы используете настраиваемое действие для вызова InstallUtil для установки сервива, то вам придется снова запускать и останавливать сервис вручную, используя CustomAction.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...