Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.31;
Скачать: CL | DM;

Вниз

Как можно остановить службу на какое-то и потом ее запустить?   Найти похожие ветки 

 
menart ©   (2004-08-19 16:31) [0]

subj?


 
Digitman ©   (2004-08-19 16:42) [1]

см. ф-цию ControlService() и всю необходимую ботву для работы этой ф-ции


 
menart ©   (2004-08-19 17:41) [2]

нашел http://delphiworld.narod.ru/base/nt_services_control.html


 
Rocket ©   (2004-09-20 20:20) [3]

Откопал ветку наконец...

Проблема с остановкой (запуск работает) сервиса RemoteRegistry - не получается.
Устанавливаю SERVICE_ALL_ACCESS, шлю SERVICE_CONTROL_STOP, а
GetLastError говорит, что ERROR_INVALID_SERVICE_CONTROL.
Но ведь вручную-то через "Администрирование" её можно остановить...


 
Gastello   (2004-09-20 23:00) [4]

Пишешь батник (программно или как) на старт и на запуск.
по таймеру или как хочешь запускаешь.

или прямо команду через shellexecute...

net stop/net start

Или я че-то не так понял?


 
Rocket ©   (2004-09-21 20:56) [5]

Спасибо за ответ.
С net stop remoteregistry получилось, но мне надо включать/выключать эту службу на удалённых машинах. Да и потом охота сделать без посторонних процессов.

Делаю вот так:

   mansch:=OpenSCManager("Имя машины",
                         nil,
                         SC_MANAGER_ALL_ACCESS);

   remreg_sch:=OpenService(mansch,
                           "RemoteRegistry",
                           SERVICE_ALL_ACCESS);

   QueryServiceStatus(remreg_sch,
                      remreg_st);

   if remreg_st.dwCurrentState<>SERVICE_RUNNING then
   begin
     StartService(remreg_sch,1,servname);    // работает
     {получаем нужные данные}
     ControlService(remreg_sch               // < а вот этот ControlService не вырубает службу, а надо бы...
                    SERVICE_CONTROL_STOP,
                    remreg_st);
   end
   else
     {получаем нужные данные};


После этого делаю GetLastError и его значение, как я уже сказал, ERROR_INVALID_SERVICE_CONTROL, что означает, или такой команды вообще нет, или она к этой службе неприменима.

Помогите, please. Может ошибка в коде? Должно же по идее работать...


 
Rocket ©   (2004-09-23 21:50) [6]

Ну что, никто не знает?



Страницы: 1 вся ветка

Текущий архив: 2004.10.31;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.045 c
3-1096741524
Донской
2004-10-02 22:25
2004.10.31
deleterecords(arall) - "операция недопустима в данном контексте"


3-1096959444
Пуртик
2004-10-05 10:57
2004.10.31
Зависание проги...


1-1098078393
Dema-X
2004-10-18 09:46
2004.10.31
clipboard->WAVE->file


1-1097769683
ev_
2004-10-14 20:01
2004.10.31
Dbgrid


11-1082007349
nester
2004-04-15 09:35
2004.10.31
Как создать поток без MCK?