VariusRain
@VariusRain
музыкант-программист-конструктор

Как запустить и остановить службы в Windows из под node js?

Суть вопроса в самом вопросе.
Есть приложение, работающее на ElectronJS, для него есть бекенд, который сейчас запускается субпроцессом, но я бы хотел сделать его службой в винде и при старте приложения запускать эту службу.
На шарпе, например, это делается нативно через
ServiceController sc = new ServiceController("MyService");

Можно ли реализовать что-то подобное на Ноде? И в какую сторону вообще смотреть?
  • Вопрос задан
  • 296 просмотров
Решения вопроса 1
VariusRain
@VariusRain Автор вопроса
музыкант-программист-конструктор
В общем-то единственный способ, который я нашёл - это запуск консольных команд и парсинг их ответа.
Можно, конечно, написать обёртку вокруг этого, но суть останется той же.
Запуск службы:
sc start ServiceName
Остановить службу:.
sc stop ServiceName
Перезапустить службу:
sc restart ServiceName
Узнать статус службы:
sc query ServiceName

Подводным камнем тут будут права. Либо запускать ноду от имени админа, либо устанавливать на службу права, чтоб можно было ей управлять от имени пользователя.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Смотреть в сторону SystemCall
https://stackabuse.com/executing-shell-commands-wi...
Большинство ЯП позволяют выполнить системные команды и получить их вывод
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы