Hi,
Es ist natürlich einfacher, einen Dienst mit Delphi hinzustellen.
Ja das ist richtig, ich verwende für NT-Services unter Delphi
DDService (zip), dass das Delphi Service Framework um einige längst fällige Features erweitert und zwei Bugs fixt (
QC #68050 und
QC #37706) die nach wie vor offen sind. (readme im zip unbedingt !lesen!)
Muss es unbedingt die SvcHost-
DLL sein?
Ja, der Svchost hat leider einen schlechten Ruf. Bei meiner Recherche zum Aufbau der
DLL waren die ersten Treffer: "Virus, Trojaner, Loader, Hilfe verseucht und schlag mich tot". Es gab nur vereinzelte Treffer die mit der Thematik professionell umgingen, z.B. im forum.sysinternals.com
writing-a-service-that-runs-under-svchost. Auch hier in der
DP wurde eine ähnliche Frage schon mal besprochen
svchost-problem doch war es nicht was ich suchte.
Welchen Grund gibt es dafür?
Der Dienst soll die bestehenden Services beobachten und ggf. bei Fehlern neu starten. Außerdem soll es die Schnittstelle zu unserer Update-Engine sein, die sich die Upgrades per
BITS von unserem Server holt und installiert. Ausschlaggebend war natürlich das der Dienst, der im Kontext der Svchost.exe läuft, nicht gleicht sichtbar ist. Da alle Programm-Komponenten digital signiert sind, sehe ich keinen Grund es so nicht zu machen.
Gruß, Axel