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

Вниз

Описание сервиса   Найти похожие ветки 

 
Misha Uskov ©   (2006-07-20 11:16) [0]

Безуспешно пытаюсь задать описание сервиса :-( помогите, пжалста.
{ Externals from advapi32.dll }
function ChangeServiceConfig2A(hService: SC_HANDLE; dwInfoLevel: DWORD;
                              var lpInfo): BOOL; stdcall;

function ChangeServiceConfig2A;   external advapi32 name "ChangeServiceConfig2A";
const
 SERVICE_CONFIG_DESCRIPTION = 1;
type
SERVICE_DESCRIPTION = record
  lpDescription : PAnsiChar;
end;

procedure TSPService.ServiceAfterInstall(Sender: TService);
var
 sdBuf : SERVICE_DESCRIPTION;
 h_manager, h_svc: SC_Handle;
begin
 h_manager := OpenSCManager("" ,nil, SC_MANAGER_CONNECT);
 if h_manager > 0 then
 begin
    MessageDlg("!", mtWarning, [mbOK], 0);
   h_svc := OpenService(h_manager, PChar(Name), SERVICE_QUERY_STATUS);
   if h_svc > 0 then
   begin
     sdBuf.lpDescription := PAnsiChar(CDescription);
     ChangeServiceConfig2A(h_svc, SERVICE_CONFIG_DESCRIPTION, sdBuf);
     CloseServiceHandle(h_svc);
     MessageDlg("!!", mtWarning, [mbOK], 0);
   end;
   CloseServiceHandle(h_manager);
 end;
end;


 
Misha Uskov ©   (2006-07-20 11:18) [1]

на сях задекларировано так:
BOOL ChangeServiceConfig2(
 SC_HANDLE hService,
 DWORD dwInfoLevel,
 LPVOID lpInfo
);

typedef struct _SERVICE_DESCRIPTION {  LPTSTR lpDescription;
} SERVICE_DESCRIPTION


 
Misha Uskov ©   (2006-07-20 11:32) [2]

ChangeServiceConfig2A возвращает ложь :-(


 
Fay ©   (2006-07-20 11:38) [3]

2 Misha Uskov ©   (20.07.06 11:32) [2]
> ChangeServiceConfig2A возвращает ложь :-(
А GetLastError возвращает $FUCK, так что-ли?


 
Misha Uskov ©   (2006-07-20 11:42) [4]

(Fay)
     if not ChangeServiceConfig2A(h_svc, SERVICE_CONFIG_DESCRIPTION, sdBuf)
       then MessageDlg(SysErrorMessage(getLastError), mtError, [mbOK], 0);
говорит "Отказано в доступе"


 
Misha Uskov ©   (2006-07-20 11:45) [5]

упс, опять поленился :-( с getLastError. Все ясно, надо
h_svc := OpenService(h_manager, PChar(Name), SERVICE_CHANGE_CONFIG);


 
Fay ©   (2006-07-20 13:16) [6]

2 Misha Uskov ©   (20.07.06 11:45) [5]
Ну и славно 8)



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

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

Наверх




Память: 0.47 MB
Время: 0.067 c
2-1163538396
Zanci
2006-11-15 00:06
2006.12.03
Про юзов


15-1163596729
MeF Dei Corvi
2006-11-15 16:18
2006.12.03
Попинайте мой дизайн :-)


1-1161264785
Master_
2006-10-19 17:33
2006.12.03
Как отметить в MonthCalendar несколько дат


2-1163522915
SergeySP
2006-11-14 19:48
2006.12.03
Как распознать ошибку


15-1163324692
Kerk
2006-11-12 12:44
2006.12.03
Фонарь