Windows: Abhängigkeiten von Diensten ändern

Mitunter muss man Abhängigkeiten von Windows-Diensten (ein Dienst kann nur gestartet werden, wenn ein Anderer bereits läuft) ändern. Ein simples Editieren oder Löschen aus der Registry reicht dabei nicht aus. Einfach und vor allem erfolgsversprechender ist es, mit dem passenden Befehl zu arbeiten.

Auszug aus der Hilfe des “sc”-Befehls:

sc config [Dienstname] depend= <Abhängigkeiten (getrennt durch / (Schrägstrich))>

Zu beachten ist die Leerstelle nach “depend= “.

Alle Abhängigkeiten entfernen:

sc config [DIENSTNAME] depend= /

Beispielsweise wurde bei einem Kunden dies benötigt, nachdem von MySQL 5.6 auf MySQL 5.7 umgestellt wurde, das die Dienst-Abhängigkeit eines hMailServer wie folgt ist:

sc config hMailServer depend= RPCSS/MySQL57

Erst nach dieser Änderung lies sich der hMailServer-Dienst wieder erfolgreich starten.

Quelle

serverfault – How to add dependency on a Windows Service AFTER the service is installed

7 Kommentare

  1. anonymous

    und wie ist das mit windows server 2025?

  2. Andy

    Was genau ist mit dieser Frage gemeint?
    Die Dienst-Abhängigkeiten kann man über bekannten Wege nach wie vor ändern.
    Sollte es um hMailServer und/oder MySQL gehen, so kann ich hierzu keine Angaben machen, da wir beides schon eine Weile nicht mehr im Einsatz haben.

  3. anonymous

    ob der befehl auch bei windows server 2025 geht. ich taste mich da grad an firebird 2.5.3 heran, welches mit dbswin 5.17 ausgeliefert wird.
    wie kann man Abhängigkeiten erstmal auflisten?

  4. Andy

    sc config… gibt auch unter Windows Server 2025.
    Abhängigkeiten kann man mit “sc qc ” auflisten.
    Unter “DEPENDENCIES” sieht man die entsprechenden Einträge.
    Ein Beispiel:

    sc qc RPCSS
    [SC] QueryServiceConfig ERFOLG

    SERVICE_NAME: RPCSS
    TYPE : 20 WIN32_SHARE_PROCESS
    START_TYPE : 2 AUTO_START
    ERROR_CONTROL : 1 NORMAL
    BINARY_PATH_NAME : C:WINDOWSsystem32svchost.exe -k rpcss -p
    LOAD_ORDER_GROUP : COM Infrastructure
    TAG : 0
    DISPLAY_NAME : Remoteprozeduraufruf (RPC)
    DEPENDENCIES : RpcEptMapper
    : DcomLaunch
    SERVICE_START_NAME : NT AUTHORITYNetworkService

  5. anonymous

    und mit cmd => sc config zu arbeiten ist ihrer Meinung nach am Besten um Abhängigkeiten von Diensten zu ändern oder ist das die gängige Meinung?

    bei mir half

    sc config DBSService depend= FirebirdServerDefaultInstance

    anscheinend ist ein Entfernen aller alten Abhängigkeiten nicht nötig!

  6. Andy

    Das ist zumindest der Weg, der mir geläufig ist und der seit vielen Jahren funktioniert. Abfragen kann man auch mit WMI machen. Alternativ, also Abfragen und Änderungen geht auch mit der PowerShell. Ein Beispiel:

    Get-Service -Name "RPCSS" -RequiredServices

    Die Ausgabe enthält die Abhängigkeiten.

  7. anonymous

    vielen Dank

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

© 2025 Andy's Blog

Theme von Anders NorénHoch ↑