Управлять сервисом на другом компьютере в W2k




Три женщины одеваются в раздевалке после занятия спортивной аэробикой. Разговор, конечно, о мужьях.
- Мой муж, - говорит первая, - работает учителем. Он всегда дарит мне коробку конфет или букет цветов перед тем, как овладеть мною.
- А мой - ювелир, - говорит вторая, - перед тем как заняться любовью со мной, - он дарит мне жемчужину.
Третья женщина задумалась на минутку и говорит:
- А мой муж работает в Микрософт. Он всегда присаживается на край кровати и рассказывает мне, как это будет здорово для меня, когда он меня трахнет.


uses
Windows, Messages, SysUtils, StdCtrls, SvcMgr;
var
ssStatus: TServiceStatus;
schSCManager, schService: SC_HANDLE ;
begin
schSCManager := OpenSCManager( PChar('Comp1'), // имя компьютера, nil - local machine
nil, // ServicesActive database
SC_MANAGER_ALL_ACCESS); // full access rights
if schSCManager = 0 then
exit; //Ошибка?
schService := OpenService(
schSCManager, // SCM database
PChar('SQLServerAgent'), // посмотри имя в Services. В данном случае - MS Server Agent
SERVICE_ALL_ACCESS);
if schService = 0 then
exit; //Ошибка?
if not QueryServiceStatus(
schService, // handle to service
ssStatus) then // address of status information structure
exit; //Ошибка?
case ssStatus.dwCurrentState of:
SERVICE_RUNNING: ShowMessage('Работает!');
SERVICE_STOPPED: ShowMessage('Выключен');
// ну и т.д.
end;
end;


Далее: Установка или снятие Debug привелегии у текущего процесса »»