AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Get Service State

Ein Thema von DaSchwoa · begonnen am 25. Nov 2020 · letzter Beitrag vom 25. Nov 2020
 
DaSchwoa

Registriert seit: 15. Sep 2020
13 Beiträge
 
#1

Get Service State

  Alt 25. Nov 2020, 13:13
Hallo Leute
Ich habe jetzt einige Services Programmiert und möchte in einem VLC Programm diese Starten und Stoppen bzw überprüfen ob sie gestartet oder gestoppt sind. Ich habe viele Seiten durchsucht und auch bei hier einige Threads gelesen.
Um zu überprüfen welchen Status ein Service hat habe ich mich für diese Lösung entschieden:
Code:
function TFrmManage.ServiceGetStatus(sService: String): Boolean;
var
   SCManager, SCService: THandle;
   ServiceStatus: TServiceStatus;

begin
   Result:= false;
  SCManager := OpenSCManager(nil, nil, SC_MANAGER_CONNECT);
  if SCManager = 0 then
  begin
    ShowMessage('Exit 1');
    Exit;
  end;

  try
    SCService := OpenService(SCManager, PChar(sService), SERVICE_START or SERVICE_STOP or SERVICE_QUERY_STATUS);

    if SCService = 0 then
    begin
      ShowMessage('Exit 2');
      Exit;
    end;

    try
      ZeroMemory(@ServiceStatus, SizeOf(ServiceStatus));
      QueryServiceStatus(SCService, ServiceStatus);
      Result:= ServiceStatus.dwCurrentState = SERVICE_RUNNING;
      ShowMessage(BoolToStr(result));
    finally
      CloseServiceHandle(SCService);
    end;

  finally
    CloseServiceHandle(SCManager);
  end;
end;
Jedoch wenn ich den Namen des Services angebe werdich ich bei Exit 2 immer aus der Procedure geworfen, da es das Service nicht kennt.
Als namen habe ich angegeben: Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlS et\Services\MeinSrv

Habe ich einen Falschen Namen angegeben oder ist ein Fehler im Code?

Geändert von DaSchwoa (25. Nov 2020 um 13:16 Uhr)
  Mit Zitat antworten Zitat
 

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 14:06 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