Hi, I went down a similar route yesterday as well and have been testing it yesterday (seemed to be ok atm )
public void StopWindowsService(string serviceName, string errorlog)
{
try
{
ServiceController serviceController = new ServiceController(serviceName);
TimeSpan timeout = TimeSpan.FromMilliseconds(30000);
serviceController.Stop();
serviceController.WaitForStatus(ServiceControllerStatus.Stopped, timeout);
System.IO.File.AppendAllText(errorlog, DateTime.Now.ToString() + " - (i) - " + serviceName + " Stopped." + Environment.NewLine);
}
catch (Exception _stopex)
{
System.IO.File.AppendAllText(errorlog, DateTime.Now.ToString() + " - (w) - " + _stopex.Message + Environment.NewLine);
}
}
public void StartWindowsService(string serviceName, string errorlog)
{
try
{
ServiceController serviceController = new ServiceController(serviceName);
TimeSpan timeout = TimeSpan.FromMilliseconds(30000);
serviceController.Start();
serviceController.WaitForStatus(ServiceControllerStatus.Running, timeout);
System.IO.File.AppendAllText(errorlog, DateTime.Now.ToString() + " - (i) - " +serviceName + " Started." + Environment.NewLine);
}
catch (Exception _startex)
{
System.IO.File.AppendAllText(errorlog, DateTime.Now.ToString() + " - (w) - "+ _startex.Message + Environment.NewLine);
}
}
Thank you again for your help