public MessageResult TryStop() { var failResult = MessageResult.MethodResult(nameof(TryStart), false); var successResult = MessageResult.MethodResult(nameof(TryStart), true); try { var serviceState = ServiceInstaller.GetServiceState(ServiceName); if (serviceState == ServiceState.NotFound) { successResult.Message = string.Format("{0} not installed!", ServiceName); return(successResult); } if (serviceState == ServiceState.Stopped || serviceState == ServiceState.StopPending) { successResult.Message = string.Format("{0} is already stopped!", ServiceName); return(successResult); } ServiceInstaller.StopService(ServiceName); return(successResult); } catch (Exception e) { failResult.Message = failResult.Message + " => " + e.Message; return(failResult); } }
public MessageResult TryUninstall() { var failResult = MessageResult.MethodResult(nameof(TryUninstall), false); var successResult = MessageResult.MethodResult(nameof(TryUninstall), true); try { var installed = ServiceInstaller.ServiceIsInstalled(ServiceName); if (!installed) { var message = string.Format("{0} already uninstalled!", ServiceName); successResult.Message = message; return(successResult); } ServiceInstaller.Uninstall(ServiceName); return(successResult); } catch (Exception e) { failResult.Message = failResult.Message + " => " + e.Message; return(failResult); } }