Как обновить установленную службу Windows?
Я написал службу Windows на С#.
С тех пор я установил его на свою машину, и он работает отлично.
Когда вы устанавливаете службу, exe
где-то копируется? Или он указывает на мою папку с bin
?
Это для меня, чтобы знать, что, когда я время от времени обновляю свой код, мне нужно удалить и переустановить мой сервис, чтобы его обновить?
Ответы
Ответ 1
Если местоположение службы Windows не изменилось и имя его исполняемого файла не изменилось, его не следует удалять и переустанавливать.
Вы можете просто остановить службу, обновить ее исполняемый файл новой версией и запустить ее снова.
Этот подход надежно работал для меня в течение многих месяцев разработки Windows-сервисов, в ходе которых я просто обновлял сервисы ServiceBase
, частные методы и т.д.; и это приводит к довольно быстрому итерационному развитию, когда у вас есть команды net stop
и net start
для ваших сервисов (ов) в истории командного окна, чтобы просто Alt + Tab, назад в историю и нажмите Enter, когда вы найдите нужную команду.
Ответ 2
Вы можете проверить путь к установленному сервису, открыв services.msc из Run. Затем щелкните правой кнопкой мыши вашу службу и посмотрите "Путь к исполняемому файлу".
Если это указывает на ваш каталог bin, он будет обновляться каждый раз, когда вы скомпилируете файл.
Ответ 3
Вам необходимо удалить старую службу Windows и установить новую версию службы Windows.
удаление:
installutil /u yourproject.exe
установить:
installutil yourproject.exe