// ReSharper disable once UnusedMember.Global public static ActionResult UninstallEverythingService(Session session) { var logger = new Logger(session, nameof(UninstallEverythingService)); try { logger.Log("Start {0}", nameof(UninstallEverythingService)); string installFolder = FindExtensionFolder(); var everythingProcessManager = new EverythingProcessManager(installFolder); if (everythingProcessManager.IsServiceInstalled()) { if (everythingProcessManager.IsServiceRunning()) { everythingProcessManager.StopService(); } everythingProcessManager.UninstallService(); } everythingProcessManager.StopClient(); var cleanup = new Cleanuper(logger); cleanup.DeleteDirectory(installFolder); return(ActionResult.Success); } catch (Exception ex) { logger.Log("Failure: {0}", ex); return(ActionResult.Failure); } finally { logger.Log("End {0}", nameof(UninstallEverythingService)); } }
// ReSharper disable once UnusedMember.Global public static ActionResult InstallEverythingService(Session session) { var logger = new Logger(session, nameof(InstallEverythingService)); try { logger.Log("Start {0}", nameof(InstallEverythingService)); string installFolder = FindExtensionFolder(); var everythingProcessManager = new EverythingProcessManager(installFolder); if (everythingProcessManager.IsServiceInstalled()) { if (everythingProcessManager.IsServiceRunning()) { everythingProcessManager.StopService(); } everythingProcessManager.UninstallService(); } everythingProcessManager.InstallService(); // wait until service will be fine Thread.Sleep(3000); everythingProcessManager.StartClientInBackgroundMode(); return(ActionResult.Success); } catch (Exception ex) { logger.Log("Failure: {0}", ex); return(ActionResult.Failure); } finally { logger.Log("End {0}", nameof(InstallEverythingService)); } }