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/)
-   -   SvcHost - Problem beim Hinzufügen in eine vorhandene Gruppe (https://www.delphipraxis.net/52093-svchost-problem-beim-hinzufuegen-eine-vorhandene-gruppe.html)

NicoDE 23. Aug 2005 18:36


SvcHost - Problem beim Hinzufügen in eine vorhandene Gruppe
 
Worum's geht: Ich habe eine Service-DLL geschrieben, die innerhalb einer bereits vorhandenen SvcHost-Gruppe (z.B. netsvcs) läuft.

Mein Problem ist nun, dass ich nach dem Hinzufügen des Service-Namens in der Registrierung den Service nicht sofort starten kann. Der zurückgegebene Fehlercode ist ERROR_SERVICE_NOT_IN_EXE (1083). So wie es aussieht, liegt es daran, dass der Host für diese Gruppe bereits läuft und die Einträge der Registrierung nur beim ersten Start einliest...

Ich wäre dankbar für Lösungen und Hinweise,
Gruß Nico

Olli 23. Aug 2005 19:01

Re: SvcHost - Problem beim Hinzufügen in eine vorhandene Gru
 
Moin Nico,

wie fügst du die DLL hinzu? Direkt über die Registry?

NicoDE 23. Aug 2005 19:37

Re: SvcHost - Problem beim Hinzufügen in eine vorhandene Gru
 
Zitat:

Zitat von Olli
wie fügst du die DLL hinzu? Direkt über die Registry?

CreateServie,
ChangeServiceConfig,
ChangeServiceConfig2
HKLM\SYSTEM\CurrentControlSet\Services\<name>\Para meters: ServiceDll, ServiceDllUnloadOnStop, ServiceMain
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost: <group>

Hm, dabei fällt mir auf, dass ich die DB für die Änderungen nicht gesperrt habe... werd's ausprobieren.

Olli 23. Aug 2005 21:39

Re: SvcHost - Problem beim Hinzufügen in eine vorhandene Gru
 
Sperren ist eine Variante. Welche Funktion benutzt du für den Handler? RegisterServiceCtrlHandlerEx() ... meine Vermutung ist, daß man diese nutzen muß und es mit RegisterServiceCtrlHandler() noch nicht geht.

NicoDE 23. Aug 2005 22:04

Re: SvcHost - Problem beim Hinzufügen in eine vorhandene Gru
 
Zitat:

Zitat von Olli
meine Vermutung ist, daß man diese nutzen muß und es mit RegisterServiceCtrlHandler() noch nicht geht.

ServiceMain wird nicht aufgerufen... der Service funktioniert bestens - allerdings erst nach einem Neustart von Windows (beziehungsweise des Hosts der Service-Gruppe), da erst dann die Gruppen-Liste neu eingelesen wird.

Olli 23. Aug 2005 22:08

Re: SvcHost - Problem beim Hinzufügen in eine vorhandene Gru
 
Zitat:

Zitat von NicoDE
ServiceMain wird nicht aufgerufen... der Service funktioniert bestens - allerdings erst nach einem Neustart von Windows (beziehungsweise des Hosts der Service-Gruppe), da erst dann die Gruppen-Liste neu eingelesen wird.

Hmmm ... Mist, dann kann ich dir wohl nicht helfen :-[

NicoDE 24. Aug 2005 01:04

Re: SvcHost - Problem beim Hinzufügen in eine vorhandene Gru
 
Kein Problem, scheint ein generelles 'Problem' des Svchost zu sein. Microsoft selbst brauchte die Funktionalität wohl nicht.
(das RPC-Interface des Hosts scheint auch keine Lösung zu bieten - schliesse das Thema hiermit, da ich keine Antwort erwarte)


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:16 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