Возможно ли развертывание службы Windows с помощью ClickOnce? Если да, то как вы это достигаете?
В настоящее время мы должны использовать проект развертывания, и процесс установки может быть значительно упрощен с помощью ClickOnce.
Возможно ли развертывание службы Windows с помощью ClickOnce? Если да, то как вы это достигаете?
В настоящее время мы должны использовать проект развертывания, и процесс установки может быть значительно упрощен с помощью ClickOnce.
AFAIK вы не можете использовать ClickOnce для развертывания службы; есть проблемы с расположением файлов (ClickOnce устанавливается в профиль пользователя) и установкой (ClickOnce - это в значительной степени побочный эффект).
Вы можете, однако, написать сервис как exe, который может самостоятельно установить/удалить из списка сервисов, так же; в основном, вы пишете его как консольный exe и обрабатываете некоторые аргументы командной строки, используя AssemblyInstaller
to [un] установить из текущей сборки. Другим преимуществом является то, что один и тот же подход может использоваться для отладки, поскольку вы можете запустить его из командной строки.
Я думаю, что NO в соответствии с Выбор между ClickOnce и установщиком Windows
Вместо ClickOnce я хотел бы использовать этот подход, используя Inno Setup, как здесь fooobar.com/questions/39273/...
У вас больше контроля над тем, что и как будет скопировано и выполнено.
Как сказал в своем ответе Марк Гравелл, я создаю exe, который сам устанавливает мою службу, а затем используйте Inno Setup для ее упаковки и развертывания. После установки Inno он автоматически запускает exe, а затем мой exe устанавливает мою службу.
Вы можете использовать развертывание ClickOnce для установки службы Windows. Однако по моему опыту каждый раз, когда выдается обновление, требуется вмешательство пользователя, и это обычно ломает причину того, что программа запускается как служба Windows.
Тем не менее, одна из проблем, которые я никогда не разработал полностью для службы Windows, запускал installutil.exe для установки службы в список служб Windows. Но это не было проблемой для тех обстоятельств, в которых я был развернут.