Win32Exception: указанная служба не существует как установленная служба - PullRequest
1 голос
/ 04 марта 2020

Я работаю на сервисе windows. В блоке catch получение исключения при остановке службы.

System.InvalidOperationException: «Служба AirService не найдена на компьютере»

InnerException- Win32Exception: указанная служба не существует как установленная служба.

Это мой код

catch (Exception ex)
{
    //WriteToFile("Simple Service Error on: {0} " + ex.Message + ex.StackTrace);
    //Stop the Windows Service.
    using (System.ServiceProcess.ServiceController serviceController = new System.ServiceProcess.ServiceController("AirService"))
    {
        serviceController.Stop();
    }
}

Как проверить, установлена ​​служба или нет?

1 Ответ

1 голос
/ 04 марта 2020

Список установленных служб вы можете получить из ServiceController.GetServices ().

    public static bool CheckServiceInstalled(string serviceToFind)
    {
        ServiceController[] servicelist = ServiceController.GetServices();
        foreach (ServiceController service in servicelist)
        {
            if (service.ServiceName == serviceToFind)
                return true;
        }
        return false;
    }
...