imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Компьютеры > Программирование
Опции темы
Старый 13.07.2004, 10:18     # 1
B0m.FLy
Guest
 
Сообщения: n/a

остановить/запустить службу nt

поможите пжалста со службами nt, покажите примерчик как остановить/запустить какую-нить службу
 
Старый 13.07.2004, 10:56     # 2
Rimar
::VIP::
 
Аватар для Rimar
 
Регистрация: 06.03.2003
Адрес: UA, Kharkov
Пол: Male
Сообщения: 1 407

Rimar ГипербогRimar ГипербогRimar ГипербогRimar Гипербог
Rimar ГипербогRimar ГипербогRimar ГипербогRimar ГипербогRimar ГипербогRimar ГипербогRimar ГипербогRimar ГипербогRimar ГипербогRimar ГипербогRimar Гипербог
Панель управления - Администрирование - службы
открывается окно со списком всех служб - дальше разберешся без проблем, только надо знать что вырубать!!!
__________________
Жизнь - игра. Задумана фигово, но графика обалденная!
Rimar вне форума  
Старый 13.07.2004, 11:28     # 3
Seva
::VIP::
 
Регистрация: 04.12.2002
Адрес: Minsk
Сообщения: 775

Seva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva ГуруSeva Гуру
B0m.FLy
такой вопрос уже поднимался!
если через коммандую строку, то
net start [имя службы]
net stop [имя службы]
Seva вне форума  
Старый 13.07.2004, 12:35     # 4
B0m.FLy
Guest
 
Сообщения: n/a

ех.. эт ветка по программированию или как?
в делфи, как программно остановить или запустить сервис ака службу?
 
Старый 13.07.2004, 14:19     # 5
B0m.FLy
Guest
 
Сообщения: n/a

всё, всем спасибо
может кому на будущее пригодится

подключаем WinSvc и

Код:
procedure TForm1.BitBtn1Click(Sender: TObject);
var 
  h_manager,h_svc: SC_Handle; 
  svc_status: TServiceStatus; 
  Temp: PChar; 
  dwCheckPoint: DWord;
begin
 h_manager:=OpenSCManager(PChar(''),nil, SC_MANAGER_CONNECT);
  if h_manager > 0 then
  begin
    h_svc := OpenService(h_manager,PChar('ваш_сервис'), SERVICE_STOP or SERVICE_QUERY_STATUS);
    if h_svc > 0 then
    begin
      if(ControlService(h_svc,SERVICE_CONTROL_STOP, svc_status))then
      begin
        if(QueryServiceStatus(h_svc,svc_status))then
        begin
          while(SERVICE_STOPPED <> svc_status.dwCurrentState)do
          begin
            dwCheckPoint := svc_status.dwCheckPoint;
            Sleep(svc_status.dwWaitHint);
            if(not QueryServiceStatus(h_svc,svc_status))then
            begin
              break;
            end;
            if(svc_status.dwCheckPoint < dwCheckPoint)then
              break;
           end;
        end; 
      end;
      CloseServiceHandle(h_svc); 
    end;
    CloseServiceHandle(h_manager);
    StaticText1.Caption := 'Сервис остановлен';
  end;
end;
 

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 20:42.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.