Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi TService.OnStart (https://www.delphipraxis.net/8398-tservice-onstart.html)

Chewie 3. Sep 2003 21:39


TService.OnStart
 
Im OnStart-Event des TService gibts ja die Variable Started. Wenn ich die auf False setze, startet der Service nicht. In der Hilfe steht, das soll man nicht machen, aber es ist IMHO eine einfache Methode, Services schon am Anfang zu beendenn, wenn Probleme auftauchen, die den weiteren Lauf des Services verhindern.
Nun die Frage: Wenn ich den Service wie oben angesprochen beende, bekomm ich die Meldung, in der unter anderem steht, dass kein Fehler gemeldet wurde. Gibt es irgendeine Möglichkeit, einen Fehler zu melden, d.h. dass also ein von mir festgelegter Fehler(code) in dieser Meldung erscheint?

sakura 5. Sep 2003 19:12

Re: TService.OnStart
 
Geht. Und zwar kannst Du die Variable ErrCode setzen. Diese ist zwar nur eine Integer-Variable, aber immerhin ein Anfang. Zusätzlich kannst Du dann noch Informationen zur Fehlermeldung in das Ereignisprotokoll des Rechners eintragen.

Delphi-Quellcode:
procedure TService1.ServiceStart(Sender: TService; var Started: Boolean);
begin
  Started := False;
  ErrCode := 55;
end;
...:cat:...

Chewie 6. Sep 2003 13:45

Re: TService.OnStart
 
Ah, den ErrCode. Stimmt, den gibts ja auch. Hätt ich vielleicht mal in der Hilfe lesen sollen, was der tut ;-)
EventLog iss klar, das wird sowieso gemacht.

A ja, warum ist der Thread eigentlich hierher verschoben worden? TService ist doch Teil der VCL, oder nicht? :shock:

Christian Seehase 6. Sep 2003 14:42

Re: TService.OnStart
 
Moin Chewie,

Zitat:

Zitat von Chewie
TService ist doch Teil der VCL, oder nicht? :shock:

für meinen Geschmack kommt eher das "oder nicht" in Frage, denn es ist ja keine Visuelle Komponente. ;-)
Services würde ich eher im Bereich Windows API ansiedeln, auch wenn es sich hier um die gekapselte Version handelt.

Chewie 6. Sep 2003 16:09

Re: TService.OnStart
 
Na ja, es ist von TComponent abgeleitet, und es hat ja in der IDE eine grafische Oberfläche. Aber naja, ist ja letztenendes egal.

himitsu 8. Apr 2011 14:52

AW: Re: TService.OnStart
 
Zitat:

Zitat von Chewie (Beitrag 62551)
Na ja, es ist von TComponent abgeleitet, und es hat ja in der IDE eine grafische Oberfläche. Aber naja, ist ja letztenendes egal.

Ich weiß, ist schon uuuuuralt...

Aber weil ich grade selber mit 'nem Service rumkämpfe, fihl es mir halt auf. :angle2:


Also, TService hat zwar sowas wie eine "Form", aber das ist nur ein Daten-Container und das ist eine Nichtvisuelle Komponente, wo man andere nichtvisuelle Komponenten reinlegen kann, wie z.b. eine Datenbankanbindung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:53 Uhr.

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