Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Mysteriöses Verhalten bei den Windows-Services (https://www.delphipraxis.net/206194-mysterioeses-verhalten-bei-den-windows-services.html)

gro 28. Nov 2020 11:43

Mysteriöses Verhalten bei den Windows-Services
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe ein höchst seltsames Verhalten bei den Windows-Services

Ich habe ein Service-Programm aus den Vorlagen erstellt und eigentlich nur im ServiceStart ein Logging eingebaut.

Delphi-Quellcode:
procedure TTestService.ServiceStart(Sender: TService; var Started: Boolean);
begin
  TRY
    [B]LogMessage('Testservice gestartet', EVENTLOG_INFORMATION_TYPE, 0, 0);[/B]
  EXCEPT
    on e: exception do begin
      LogMessage('EXCEPTION in Testservice ServiceStart. Error:' + e.Message, EVENTLOG_ERROR_TYPE, 0, 0);
    end;
  END;
end;


Das Service wurde in einen CMD als Admin mit /install installiert und gestartet.
Soweit so gut. Im Windows-Protokoll bei den Anwendungen wird auch das auch nach den Start wie erwartet protokoliert.

ABER wenn der Rechner jetzt neu gestartet wird, protokoliert das Service beim Start dieses Event NICHT!!!
Bei den Diensten wird das Service allerdings als gestartet ausgegeben und das Service läuft auch!

Hat jemand eine Idee was das Verhalten auslöst?

Dalai 28. Nov 2020 12:18

AW: Mysteriöses Verhalten bei den Windows-Services
 
Wird das System wirklich neu gestartet oder ist hiermit nur ein Herunterfahren und Hochfahren gemeint? Das macht ab Win8 einen Unterschied, sofern der Schnellstart aktiv ist. Siehe auch meine Antwort in einem ähnlichen Thema. Man kann auch einfach nachsehen, wann der Prozess des Dienstes gestartet wurde (bzw. wie lange er bereits läuft), z.B. mit Process Hacker.

Falls der Rechner wirklich neu gestartet wird: Ändert sich etwas, wenn der Starttyp des Dienstes auf "Automatisch (Verzögert)" gestellt wird?

Grüße
Dalai

himitsu 28. Nov 2020 15:23

AW: Mysteriöses Verhalten bei den Windows-Services
 
Ich hab nie rausbekommen warum, aber ich hatte mit LogMessage auch schon Probleme.
Aus irgendeinem Grund bleibt es in dieser Funktion manchmal einfach hängen und geht nicht weiter.
Auch landen nicht immer diese Nachrichten im WindowsLog.

Drum lässt sich bei uns nun diese Logausgabe deaktivieren, falls wir mal wieder auf einen Rechner treffen, wo das einfach nicht gehn will.
Wir haben unser eigenes Log, aber für den Admin der Firmen, wo unser Programm läuft, wollte ich dennoch zusätzlich nochmal die wichtigstens Ereignisse im SystemLog drin haben.

Delphi.Narium 28. Nov 2020 16:01

AW: Mysteriöses Verhalten bei den Windows-Services
 
Das Ereignisprotokoll wird doch auch von 'nem Dienst erstellt (EventLog).

Was ist, wenn Dein Dienst vor diesem Dienst gestartet wird?
Genau: Es wird nix geloggt, weil der zum Loggen zuständige Dienst noch garnicht läuft.

Eventuell mal hier schauen: https://www.it-administrator.de/them...nt/111049.html
oder hier: https://administrator.de/forum/servi...sen-42539.html

Oder ganz banal:

Kommandozeile aufmachen:
Code:
sc config NameDeinesService depend=eventlog
Damit sagsts Du Windows, dass der Service EventLog "vor" Deinem Service gestartet sein muss, da Dein Dienst von ihm abhängig ist.

Wäre mal 'nen Versuch wert, ob das aber tatsächlich die Ursache ist, keine Ahnung.

gro 1. Dez 2020 16:49

AW: Mysteriöses Verhalten bei den Windows-Services
 
Besten dank für die Antworten.
Das Problem ist als gelöst zu betrachten.
Wer lesen kann ist klar im Vorteil. In Ereignisprotokoll steht doch tatsächlich
"Das System wurde aus dem Energiesparmodus reaktiviert." :oops:


Lösung:
Da dies ein nagelneuer Rechner ist, war bei den Energieoptionen der Menüpunkt "Schnellstart aktivieren" aktiv.
Haken raus -> Problem gelöst!

Besten dank nochmals und danke für die Anregung mit den Dependencies, habe den Eventlog aus Sicherheitsgründen gleich mit reingepackt


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf