Как служба Windows может определить свое имя службы?
Я посмотрел и не смог найти простой вопрос:
Как служба Windows может определить имя службы, для которой она была запущена?
Я знаю, что установка может взломать реестр и добавить аргумент командной строки, но логически это выглядит такдолжен быть ненужным, отсюда и этот вопрос.
Я надеюсь запустить несколько копий одного двоичного файла более аккуратно, чем взломать реестр.
редактировать:
Это написано на C #. Мои приложенияГлавный() точка входа делает разные вещи, в зависимости от аргументов командной строки:
Установите или удалите службу. Командная строка может предоставлять имя службы, отличное от заданного по умолчанию, и может изменять количество рабочих потоков.Запустить как исполняемый файл командной строки (для отладки),Запускать как «Служба Windows». Здесь он создает экземпляр моегоServiceBaseкласс, потом звонитSystem.ServiceProcess.ServiceBase.Run (экземпляр);В настоящее время шаг установки добавляет имя службы и число потоков кImagePath в реестре, чтобы приложение могло определить его ServiceName.