Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Einem Dienst eine Erklärung für die MMC mitgeben

  Alt 23. Okt 2008, 20:51
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.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat