Как изменить имя службы windows?
У меня есть приложение службы windows, разработанное на C#. Одна и та же служба должна выполняться с разными файлами конфигурации. Чтобы запустить их на той же машине, мне нужно будет изменить имя службы. Я могу создать несколько копий решения, но не знаете, как изменить имена служб.
спасибо
3 ответов
в классе службы win, производном от ServiceBase
, есть свойство, которое наследуется, что вы можете установить называется ServiceName
. Вы можете сделать приложение.config, добавьте параметр для имени службы и попросите класс службы win назначить это свойство соответствующим образом. Таким образом, каждое имя службы будет уникальным, если вы измените настройку в приложении.конфиг.
имя службы также можно редактировать через файле projectinstaller режим конструктора. Существует свойство под названием на ServiceInstaller.
конфигурация для служб Windows хранится в реестре в разделе раздел HKEY_LOCAL_MACHINE\система\CurrentControlSet на\услуги... вы, вероятно, захотите изменить как имя ключа ("папка", так и реальное имя сервиса здесь), так и значение"отображаемое имя".
может быть, лучше используйте такой инструмент, как SC.EXE для настройки служб, чтобы избежать проблем с плохими изменениями реестра. Хотя SC не может переименовать службу на месте, она позволяет удалять и создавать службы (просто убедитесь, что все настройки правильно!).