Я новичок, пытаюсь разработать службу windows, которая отправляет электронные письма до истечения срока действия страхового полиса.Я установил службу для автоматического запуска, но она не запускается автоматически (отображается на консоли служб).И когда я запускаю его вручную, он отправляет оповещения, но останавливается с ошибкой 1064, которая после проверки средства просмотра событий вызвана другим экземпляром службы, уже запущенным.Тем не менее, если я не пытаюсь запустить службу вручную, оповещения не отправляются.
Я попытался удалить службу с помощью installutil и переустановить ее, чтобы убедиться, что запущен только один экземпляр.
//According to event viewer this is the block of code where the issue occurs.
ServiceController[] services = ServiceController.GetServices();
// Iterating each service to check that if a service named
// EmailExpiracaoSeguroAuto is found then check that its status whether
// it is running or stopped. If found running then it will
// stop that service; else it starts that service
foreach (ServiceController x in services)
{
if (x.DisplayName == "EmailExpiracaoSeguroAuto")
{
if (x.Status == System.ServiceProcess.ServiceControllerStatus.Running)
{
x.Stop();
}
else
{
//More precisely HERE
x.Start();
}
}
}
}
Я ожидаю, что смогу преодолеть эту ошибку, автоматически запустив службу и продолжив ее работу.