Как запустить службу Windows из приложения - PullRequest
0 голосов
/ 10 июля 2019

У меня есть Windows Service, и я хочу запустить его, используя ServiceController. Служба работает как LocalSystem. Когда я пытаюсь Start, я получаю:

System.InvalidOperationException: «Невозможно открыть службу [сервис] в компьютер ".". "
Внутреннее исключение Win32Exception: доступ запрещен

Главная

   static void Main(string[] args) {
            using (ServiceController controller = new ServiceController("someService")) {
                controller.Start();
            }
        }

Могу ли я каким-то образом повысить права программно, чтобы запустить службу (даже если мне нужно использовать P/Invoke для Winapi?).

1 Ответ

1 голос
/ 10 июля 2019

Вам действительно нужно подняться.Для этого необходимо создать новый процесс для запуска службы, либо явно с помощью глагола оболочки runas, либо с помощью имени монумента COM.

...