Share via


SO WIRD'S GEMACHT: Erstellen von Instanzen von ServiceController-Komponenten

Dieser Dokumentation für die Vorschau nur ist und in späteren Versionen geändert. Leere Themen wurden als Platzhalter eingefügt.]

Sie können ServiceController-Komponente verwenden, Verbindung und das Verhalten der vorhandenen Diensten steuern. Wenn Sie eine Instanz der Klasse ServiceController erstellen, festgelegt seine Eigenschaften, so, dass Interaktion mit einem bestimmten Windows-Dienst. Dann können Sie die Klasse zu starten, beenden und anderweitig geändert des Dienstes.

Sie verwenden eine ServiceController wahrscheinlich auf Verwaltungsebene. Angenommen, erstellen Sie eine Windows- oder ASP.NET Webanwendung, die benutzerdefinierte Befehle an einen Dienst über eine Instanz der Komponente ServiceController gesendet. Dies wäre sinnvoll da vom Dienststeuerungs-Manager benutzerdefinierte Befehle nicht unterstützt.

Es gibt mehrere Möglichkeiten, die eine Instanz der Komponente ServiceController zu erstellen:

  • Sie können eine Instanz der Komponente ServiceController aus der Registerkarte KomponentenToolbox in ein Formular oder einen anderen Designer ziehen.

  • Sie können eine ServiceController -Komponente in den Designer von Server-Explorer hinzufügen.

  • Sie können eine Instanz der Klasse ServiceController in Code erstellen.

Nachdem Sie eine Instanz von ServiceController erstellt haben, müssen Sie zwei Eigenschaften festlegen, auf den Dienst identifiziert wird, mit dem Sie interagiert: Die Computername und den Namen des Dienstes möchten Sie steuern.

Hinweis

MachineName wird standardmäßig auf dem lokalen Computer festgelegt, sodass nicht ändern, wenn Sie die Komponenteninstanz auf einem anderen Computer festgelegt werden müssen.

Hinweis

Unterscheiden sich die Dialogfelder und Menübefehle Bildschirm möglicherweise von den je nach den aktiven Einstellungen oder der Edition in der Hilfe beschriebenen.Wählen Sie Einstellungen importieren und exportieren Extras, um Ihre Einstellungen zu ändern.Weitere Informationen finden Sie unter Arbeiten mit Einstellungen.

Erstellen und konfigurieren eine ServiceController-Komponente mit dem Server-Explorer

  1. Fügen Sie im Server-Explorer den Server, wenn er noch nicht aufgelistet ist, hinzu. Weitere Informationen finden Sie unter SO WIRD'S GEMACHT: Zugriff und Initialize Server Explorer/Database Explorer.

  2. Erweitern Sie den Dienstknoten , und suchen Sie dann den Dienst auf dem Sie administrative Aufgaben durchführen möchten.

  3. Die Maustaste auf den Dienst, und klicken Sie auf hinzufügen auf Designer.

    Eine ServiceController-Komponente wird angezeigt in Ihrem Projekt für die Interaktion mit dem ausgewählten Dienst konfiguriert.

Erstellen und konfigurieren eine ServiceController-Komponente aus der Toolbox

  1. Auf die Registerkarte KomponentenToolbox zugreifen.

  2. Wählen Sie das Symbol ServiceController und ziehen Sie es auf die Designeroberfläche des Formulars oder der Komponente.

  3. Legen Sie die folgenden Eigenschaften fest.

    -Eigenschaft

    Einstellung

    Computername

    Der Name des Computers auf dem der Dienst vorhanden ist, oder "."Für den lokalen Computer.

    Dienstname

    Der Name des Dienstes mit dem Sie interagieren möchten.

    Tipp

    Sie können Server-Explorer , was der Dienstname für jeden angegebenen Dienst festgelegt werden sollte verwenden.Wählen Sie den Dienst in der Sie interessiert Server-Explorerund Dienstname für Sie im Eigenschaftenfenster angezeigt.

Programmgesteuert erstellen und konfigurieren eine ServiceController-Komponente

  1. Erstellen Sie eine Instanz der Klasse ServiceController im Code.

  2. Legen Sie die MachineName und ServiceName Eigenschaften, um den Dienst anzugeben, den Sie steuern möchten.

    Das folgende Beispiel veranschaulicht eine ServiceController-Komponente, mit die interagiert mit dem IIS-Verwaltungsdienst auf dem lokalen Computer erstellen. Die Komponente wird dann den der Domänencontroller bestimmt, ob es Befehle zum Beenden annehmen kann zugeordneten Dienst fragt und wenn dies der Fall ist, gibt den Befehl. Dieses Beispiel ist Teil eines Windows-Projekts, in dem ein Formular mit verschiedenen Schaltflächen verwendet wird, starten, beenden und anderweitig bearbeiten des Dienstes. Jedes Mal auf eine Schaltfläche geklickt wird, die Bedingung ausgewertet und Statusinformationen in einem Label-Steuerelement angezeigt.

    Hinweis

    Bevor diese Beispiele ausgeführt werden können, müssen Sie einen Verweis auf System.ServiceProcess.dll hinzufügen und ein Imports oder using -Anweisung für den System.ServiceProcess-Namespace enthalten.

                                Sub Main()
        Dim myController AsNew System.ServiceProcess.
            ServiceController("IISAdmin")
    
        If myController.CanStop Then
            Debug.WriteLine(myController.ServiceName & " can be stopped.")
        Else
            Debug.WriteLine(myController.ServiceName & " cannot stop.")
        EndIfEndSub
    
                                public
                                static
                                void Main(string[] args)
        {
            System.ServiceProcess.ServiceController myController =
               new System.ServiceProcess.ServiceController("IISAdmin");
            if (myController.CanStop)
            {
                System.Diagnostics.Debug.WriteLine(
                   myController.DisplayName + "  can be stopped.");
            }
            else
            {
                System.Diagnostics.Debug.WriteLine(
                   myController.DisplayName + "  cannot stop.");
            }
        }
    

Siehe auch

Aufgaben

SO WIRD'S GEMACHT: Ausführen von Verwaltungsaufgaben für Dienste

SO WIRD'S GEMACHT: Abrufen von Listen von Diensten

Konzepte

Einführung in die Kommunikation mit vorhandenen Diensten