Esempio n. 1
0
        public static void EnableTheService(string serviceName, string computername, serviceAction serAction)
        {
            switch (serAction)
            {
            case serviceAction.run:
                Process p = new Process();
                p.StartInfo.FileName        = "cmd.exe";
                p.StartInfo.Arguments       = @"/c sc \\" + computername + " config " + serviceName + " start= demand";
                p.StartInfo.CreateNoWindow  = true;
                p.StartInfo.UseShellExecute = false;
                p.Start();
                p.WaitForExit();
                break;

            case serviceAction.stop:
                Process p1 = new Process();
                p1.StartInfo.FileName        = "cmd.exe";
                p1.StartInfo.Arguments       = @"/c sc \\" + computername + " config " + serviceName + " start= disabled";
                p1.StartInfo.CreateNoWindow  = true;
                p1.StartInfo.UseShellExecute = false;
                p1.Start();
                p1.WaitForExit();
                break;

            default:
                throw new InvalidEnumArgumentException("Invalid parameter in serviceAction enum");
            }
        }
Esempio n. 2
0
        public static void runOrStopService(string serviceName, string computer, serviceAction action)
        {
            Console.WriteLine("==========Service Manipulation==========");
            switch (action)
            {
            case serviceAction.run:
                EnableTheService(serviceName, computer, action);
                using (ServiceController sc = new ServiceController(serviceName, computer))
                    if (sc.Status != ServiceControllerStatus.Running)
                    {
                        Console.WriteLine("Start sluzby {0}", sc.DisplayName);
                        sc.Start();
                        Console.WriteLine("Cekani na status: Running");
                        sc.WaitForStatus(ServiceControllerStatus.Running, TimeSpan.FromSeconds(60));
                        if (sc.Status != ServiceControllerStatus.Running)
                        {
                            MessageBox.Show("Sluzbu " + sc.DisplayName + " se nepodarilo spustit", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        else
                        {
                            Console.WriteLine("Status sluzby {0}: {1}", sc.DisplayName, sc.Status);
                        }
                    }
                    else
                    {
                        Console.WriteLine("Status sluzby {0}: {1}", sc.DisplayName, sc.Status);
                    }
                break;

            case serviceAction.stop:
                EnableTheService(serviceName, computer, action);
                using (ServiceController sc = new ServiceController(serviceName, computer))
                    if (sc.Status != ServiceControllerStatus.Stopped)
                    {
                        Console.WriteLine("Zastavovani sluzby {0}", sc.DisplayName);
                        sc.Stop();
                        Console.WriteLine("Cekani na status: Stopped");
                        sc.WaitForStatus(ServiceControllerStatus.Stopped, TimeSpan.FromSeconds(60));
                        if (sc.Status != ServiceControllerStatus.Stopped)
                        {
                            MessageBox.Show("Sluzbu " + sc.DisplayName + " se nepodarilo zastavit", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        else
                        {
                            Console.WriteLine("Status sluzby {0}: {1}", sc.DisplayName, sc.Status);
                        }
                    }
                break;

            default:
                throw new InvalidEnumArgumentException("Invalid parameter in serviceAction enum");
            }
            Console.WriteLine("========================================");
        }