Я создал службу Windows в C #, установил ее на сервере, и она работает нормально.
Теперь я хочу снова установить ту же службу, но запущенную из другого рабочего каталога, с другим конфигурационным файлом и т. Д. Таким образом, я хотел бы иметь два (или более) экземпляра одного и того же служба работает одновременно.
Первоначально это невозможно, так как установщик будет жаловаться, что уже установлена служба с указанным именем.
Я могу преодолеть это, изменив мой код, установив для свойства ServiceBase.ServiceName
новое значение, затем перекомпилировав и снова запустив InstallUtil.exe. Однако я бы предпочел установить имя службы во время установки, то есть в идеале я бы сделал что-то вроде
InstallUtil.exe / i
/ servicename = "MyService Instance 2"
MyService.exe
Если это недостижимо (я очень в этом сомневаюсь), я хотел бы иметь возможность вводить имя службы при создании службы. Я подумал, что можно было бы использовать какое-то событие сборки, использовать хитрый msbuild или nant трюк или что-то в этом роде, но я не понимаю.
Любые предложения будут с благодарностью.
Спасибо за ваше время.