Права доступа на отключение служб Windows
От: Xobotik Россия  
Дата: 02.10.09 22:28
Оценка:
Здравствуйте! У меня такой вопрос как назначить права доступа приложению к отключению служб Windows?
Вот в принципе код реализации отключения службы:

namespace StopService
{

    class Program 
    {
        static void Main(string[] args) 
        {
            
            ServiceController sc;
            string serviceName;
            TimeSpan timeout = new TimeSpan(0, 0, 30);
            OperatingSystem os;

            os = Environment.OSVersion;
            if (os.Platform != PlatformID.Win32NT)
            {
                throw new PlatformNotSupportedException("Для работы нужна OC Windows NT, 2000, XP или выше");
            }
            os = null;

            // Имя сервиса
            serviceName = "RemoteRegistry";

            // создаем контроллер
            sc = new ServiceController(serviceName);

            // проверяем статус процесса
            if (sc.Status == ServiceControllerStatus.Running)
            {
                // процесс можно остановить?
                if (sc.CanStop)
                {
                    Console.WriteLine("Останов сервиса {0}", serviceName);
                    sc.Stop();

                    try{
                        // подождем 30 секунд
                        sc.WaitForStatus(ServiceControllerStatus.Stopped, timeout);
                        Console.WriteLine("Сервис {0} успешно останвлен", serviceName);
                    }
                    catch(System.ServiceProcess.TimeoutException)
                    {
                        Console.WriteLine("Не удалось остановить сервис {0}", serviceName);
                    }
                }
                    else
                    {
                        Console.WriteLine("Сервис {0} не может быть остановлен",serviceName);
                    }
                }
            Console.ReadKey();            
        }
    }
}


Как я понимаю права доступа назначаются в файле проекта AssemblyInfo.cs вот только вопрос как ? И какой класс использовать для назначения прав доступа ? Или возможно назначить права приложению , ну допустим администратора.

Заранее спасибо!
С уважением!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.