Registriert seit: 21. Aug 2004
Ort: Lengerich
658 Beiträge
RAD-Studio 2009 Ent
|
Re: Einem Dienst eine Erklärung für die MMC mitgeben
23. Okt 2008, 21:18
Zitat von SirThornberry:
Der Standardservice bietet keine Möglichkeit eine Beschreibung anzugeben. Diese habe ich bisher daher über die Apifunktion selbst gesetzt:
Delphi-Quellcode:
[...]
const
SERVICE_CONFIG_DESCRIPTION = 1;
type
TSERVICE_DESCRIPTION = packed record
lpDescription: PChar;
end;
[...]
function ChangeServiceConfig2A(hService: HWND; dwInfoLevel: DWord; lpInfo: Pointer): BOOL; stdcall; external 'advapi32.dll';
[...]
procedure TYourServiceClass.ServiceAfterInstall(Sender: TService);
var
lDescription : TSERVICE_DESCRIPTION;
lManager,
lServiceHandle : Cardinal;
begin
lManager := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
if (lManager <> 0) then
begin
lServiceHandle := OpenService(lManager, PChar(Self.Name), SERVICE_ALL_ACCESS);
if (lServiceHandle <> 0) then
begin
lDescription.lpDescription := 'Deine Beschreibung';
ChangeServiceConfig2A(lServiceHandle, SERVICE_CONFIG_DESCRIPTION, @lDescription);
CloseServiceHandle(lServiceHandle);
end;
CloseServiceHandle(lManager);
end;
end;
@SvB: Woher hast du den Quelltext? Der sieht ja 1 zu 1 aus wie der aus meinem Projekt.
Hi,
vielen Dank. Verrätst Du mir auch noch, welche Unit ich für "OpenSCManager" etc. einbinden muss?
Gruss
EL
Narben am Körper sind ein Zeichen dafür, das man gelebt hat.
Narben auf der Seele sind ein Zeichen dafür, das man geliebt hat.
|