AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wie eine Beschreibung für TService erzeugen

Ein Thema von manuel · begonnen am 7. Feb 2005 · letzter Beitrag vom 16. Feb 2005
 
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Wie eine Beschreibung für TService erzeugen

  Alt 8. Feb 2005, 16:00
Ich würde empfehlen, den dokumentierten Weg zu nehmen, und das ist die Verwendung von MSDN-Library durchsuchenChangeServiceConfig2


Hier ein Auszug aus einer Klasse, die ich mal geschrieben habe:

Delphi-Quellcode:
procedure TServiceInstaller.SetDescription(const Value: String);
var
  sd: TServiceDescription;
begin
  if FServiceOpened then
  begin
    sd.lpDescription := PChar(Value);
    ChangeServiceConfig2(FhService, SERVICE_CONFIG_DESCRIPTION, @sd);
    FDescription := Value;
  end;
end;
FhService ist hier das Handle des geöffneten Dienstes.


Eventuell musst du dir noch die Funktionsdeklaration und den Typ TServiceDescription importieren:

Delphi-Quellcode:
unit Winscv_fragment;

interface

uses Winsvc, Windows;

function ChangeServiceConfig2A(hService: SC_HANDLE; dwInfoLevel: DWord;
  lpInfo: Pointer): BOOL; stdcall;
function ChangeServiceConfig2W(hService: SC_HANDLE; dwInfoLevel: DWord;
  lpInfo: Pointer): BOOL; stdcall;
function ChangeServiceConfig2(hService: SC_HANDLE; dwInfoLevel: DWord;
  lpInfo: Pointer): BOOL; stdcall;

type
  _SERVICE_DESCRIPTIONA = packed record
    lpDescription: PChar;
  end;
  TServiceDescriptionA = _SERVICE_DESCRIPTIONA;
  PServiceDescriptionA = ^TServiceDescriptionA;

  _SERVICE_DESCRIPTIONW = packed record
    lpDescription: PWChar;
  end;
  TServiceDescriptionW = _SERVICE_DESCRIPTIONW;
  PServiceDescriptionW = ^TServiceDescriptionW;

  //we use the ANSI version
  TServiceDescription = TServiceDescriptionA;

const
  SERVICE_CONFIG_DESCRIPTION = 1;
  SERVICE_CONFIG_FAILURE_ACTIONS = 2;

implementation

function ChangeServiceConfig2A; external advapi32 name 'ChangeServiceConfig2A';
function ChangeServiceConfig2W; external advapi32 name 'ChangeServiceConfig2W';
function ChangeServiceConfig2; external advapi32 name 'ChangeServiceConfig2A';

end.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz