Beim überfliegen habe ich dort eben nur 2 Varianten gesehen.
a) "ServiceExecute" hält den Service mit "while not terminated do begin machwas; end;" am Leben
b) die sauberere, aber für den Beginn kompliziertere Variante, mit dem "inneren" ServiceThread
Bevor er sich an Variante "B" wagt sollte "A" aus meiner Sicht erstmal gelingen.