I would strongly advise you to focus your efforts on correcting the problems diagnosed, and not on the fire symptoms. Find out why third party services are stopping / failing and nipping problems in the bud.
, - , ServiceController, , MSDN. , , Start, , .
(, ), .NET, , , # , :
using System.ServiceProcess;
var services = ServiceController.GetServices();
foreach (var service in services)
{
if (service.ServiceName == myServiceName &&
service.Status == ServiceControllerStatus.Stopped)
{
service.Start();
}
}