Gewusst wie: Starten von Diensten

Aktualisiert: November 2007

Nachdem ein Dienst installiert wurde, muss er gestartet werden. Beim Starten wird die OnStart-Methode für die Dienstklasse aufgerufen. In der Regel werden die Vorgänge, die vom Dienst durchgeführt werden, von der OnStart-Methode definiert. Nachdem ein Dienst gestartet worden ist, bleibt er aktiv, solange er nicht manuell angehalten oder beendet wird.

Für Dienste kann festgelegt werden, ob sie automatisch oder manuell gestartet werden. Ein automatisch startender Dienst wird gestartet, wenn der Computer, auf dem er installiert ist, neu gestartet oder zum ersten Mal eingeschaltet wird. Ein Dienst, der manuell gestartet wird, muss von Benutzern gestartet werden.

Hinweis:

Mit Visual Studio erstellte Dienste haben standardmäßig die Startmethode Manuell.

Ein Dienst kann auf verschiedene Weise manuell gestartet werden: Mit dem Server-Explorer, dem Dienststeuerungs-Manager oder indem im Code die ServiceController-Komponente verwendet wird. Eine Übersicht der ServiceController-Komponenten finden Sie unter Überwachen von Windows-Diensten.

Die StartType-Eigenschaft für die ServiceInstaller-Klasse wird festgelegt, um zu bestimmen, ob ein Dienst manuell oder automatisch gestartet werden soll.

So geben Sie an, wie ein Dienst gestartet werden soll

  1. Nachdem Sie den Dienst erstellt haben, fügen Sie die erforderlichen Installationsprogramme hinzu. Weitere Informationen finden Sie unter Gewusst wie: Hinzufügen von Installern zur Dienstanwendung.

  2. Klicken Sie im Designer auf das Dienstinstallationsprogramm für den Dienst, mit dem Sie arbeiten.

  3. Legen Sie im Eigenschaftenfenster die StartType-Eigenschaft auf einen der folgenden Werte fest:

    Installationszeitpunkt

    Festzulegender Wert

    Sobald der Computer neu gestartet wird

    Automatisch

    Sobald der Dienst von einer expliziten Benutzeraktion gestartet wird

    Manuell

    Tipp:

    Wenn der Dienst nie gestartet werden soll, legen Sie die StartType-Eigenschaft auf Deaktiviert fest. Wenn ein Server mehrmals neu gestartet wird, kann damit Zeit gespart werden, indem das Starten von Diensten verhindert wird, die in der Regel gestartet würden.

    Hinweis:

    Diese und weitere Eigenschaften können geändert werden, nachdem der Dienst installiert wurde.

    Es stehen mehrere Möglichkeiten zur Verfügung, einen Dienst zu starten, dessen StartType-Vorgang auf Manuell festgelegt ist: mit dem Server-Explorer, dem Dienststeuerungs-Manager von Windows oder programmgesteuert. Wichtig ist dabei, dass der Dienst nicht von allen Methoden im Kontext des Dienststeuerungs-Managers gestartet wird. Tatsächlich wird der Controller mit dem Server-Explorer und mit programmgesteuerten Startmethoden geändert.

So starten Sie einen Dienst manuell mit dem Server-Explorer

  1. Fügen Sie im Server-Explorer den gewünschten Server hinzu, sofern dieser noch nicht aufgelistet ist. Weitere Informationen finden Sie unter Gewusst wie: Zugreifen auf und Initialisieren von Server-Explorer/Datenbank-Explorer.

    Hinweis:

    Der Knoten Server vom Server-Explorer steht in der Standard Edition von Visual Studio nicht zur Verfügung.

  2. Erweitern Sie den Knoten Dienste, und suchen Sie die zu startenden Dienste.

  3. Klicken Sie mit der rechten Maustaste auf den Dienst, und klicken Sie dann auf Starten.

So starten Sie einen Dienst manuell mit dem Dienststeuerungs-Manager

  1. Öffnen Sie den Dienststeuerungs-Manager, indem Sie einen der folgenden Schritte ausführen:

    • Klicken Sie in Windows XP und 2000 Professional auf dem Desktop des Computers mit der rechten Maustaste auf Arbeitsplatz und dann auf Verwalten. Erweitern Sie im daraufhin angezeigten Dialogfeld den Knoten Dienste und Anwendungen.

      – oder –

    • Klicken Sie in Windows Server 2003 und Windows 2000 Server auf Start, zeigen Sie auf Programme und dann auf Verwaltung, und klicken anschließend Sie auf Dienste.

      Hinweis:

      In Windows NT 4.0 kann das Dialogfeld über die Systemsteuerung geöffnet werden.

    Der Dienst wird im Bereich Dienste des Fensters angezeigt.

  2. Wählen Sie den Dienst in der Liste aus, klicken Sie mit der rechten Maustaste darauf, und klicken Sie dann auf Starten.

So starten Sie einen Dienst programmgesteuert

  1. Erstellen Sie eine Instanz der ServiceController-Klasse, und konfigurieren Sie sie so, dass Daten mit dem Dienst ausgetauscht werden können. Weitere Informationen finden Sie unter Gewusst wie: Erstellen von Instanzen von ServiceController-Komponenten.

  2. Starten Sie den Dienst, indem Sie die Start-Methode aufrufen.

Siehe auch

Aufgaben

Gewusst wie: Erstellen von Windows-Diensten

Gewusst wie: Hinzufügen von Installern zur Dienstanwendung

Gewusst wie: Ausführen von Verwaltungsaufgaben für Dienste

Konzepte

Einführung in Windows-Dienstanwendungen

Referenz

Gewusst wie: Zugreifen auf und Initialisieren von Server-Explorer/Datenbank-Explorer