Windows-Dienst - Windows service

In Windows NT- Betriebssystemen ist ein Windows-Dienst ein Computerprogramm, das im Hintergrund ausgeführt wird . Es ähnelt im Konzept einem Unix- Daemon . Ein Windows-Dienst muss den Schnittstellenregeln und -protokollen des Service Control Managers entsprechen , der Komponente, die für die Verwaltung von Windows-Diensten verantwortlich ist. Es ist die Dienste- und Controller-App services.exe, die alle Dienste startet und ihre Aktionen wie Start, Ende usw. verwaltet.

Windows-Dienste können so konfiguriert werden, dass sie beim Starten des Betriebssystems gestartet und im Hintergrund ausgeführt werden, solange Windows ausgeführt wird. Alternativ können sie manuell oder durch ein Ereignis gestartet werden. Windows NT-Betriebssysteme umfassen zahlreiche Dienste, die im Kontext von drei Benutzerkonten ausgeführt werden : System, Netzwerkdienst und Lokaler Dienst. Diese Windows-Komponenten werden häufig mit Host Process for Windows Services in Verbindung gebracht . Da Windows-Dienste im Kontext ihrer eigenen dedizierten Benutzerkonten ausgeführt werden, können sie ausgeführt werden, wenn ein Benutzer nicht angemeldet ist.

Vor Windows Vista konnten Dienste, die als "interaktiver Dienst" installiert wurden, mit dem Windows- Desktop interagieren und eine grafische Benutzeroberfläche anzeigen . In Windows Vista sind interaktive Dienste jedoch veraltet und können aufgrund der Absicherung von Windows-Diensten möglicherweise nicht ordnungsgemäß ausgeführt werden .

Verwaltung

Windows-Administratoren können Dienste verwalten über:

Service-Snap-In

Das auf der Microsoft Management Console basierende Dienste-Snap-In kann eine Verbindung mit dem lokalen Computer oder einem Remote-Computer im Netzwerk herstellen und Benutzern Folgendes ermöglichen:

  • eine Liste der installierten Dienste zusammen mit Dienstnamen, Beschreibungen und Konfiguration anzeigen
  • Dienste starten, stoppen, pausieren oder neu starten
  • spezifizieren Sie ggf. Serviceparameter
  • den Starttyp ändern. Akzeptable Starttypen sind:
    • Automatisch : Der Dienst startet bei der Systemanmeldung.
    • Automatisch (Verzögert) : Der Dienst startet kurz nach dem Hochfahren des Systems. Diese Option wurde in Windows Vista eingeführt , um die Boot-to-Desktop-Zeit zu verkürzen. Allerdings unterstützen nicht alle Dienste einen verzögerten Start.
    • Manuell : Der Dienst startet nur, wenn er explizit aufgerufen wird.
    • Deaktiviert : Der Dienst ist deaktiviert. Es wird nicht ausgeführt.
  • den Kontext des Benutzerkontos ändern, in dem der Dienst betrieben wird
  • Wiederherstellungsaktionen konfigurieren, die ausgeführt werden sollen, wenn ein Dienst fehlschlägt
  • Service-Abhängigkeiten untersuchen und feststellen, welche Dienste oder Gerätetreiber von einem bestimmten Dienst abhängen oder von welchen Diensten oder Gerätetreibern ein bestimmter Dienst abhängt
  • die Leistungsliste als Textdatei oder als CSV- Datei exportieren

Befehlszeile

SC
Entwickler Microsoft , ReactOS-Mitwirkende
Betriebssystem Windows , ReactOS
Typ Befehl
Lizenz Windows: Proprietäre kommerzielle Software
ReactOS: GNU General Public License
Webseite docs .microsoft .com /en-us /vorherige-versionen /windows /it-pro /windows-server-2012-R2-and-2012 /cc754599(v%3dws .11 )

Das Befehlszeilentool zum Verwalten von Windows-Diensten ist sc.exe. Es ist für alle Versionen von Windows NT verfügbar . Dieses Dienstprogramm ist in Windows XP und höher sowie in ReactOS enthalten .

Der scVerwaltungsbereich des Befehls ist auf den lokalen Computer beschränkt. Ab Windows Server 2003 kann es jedoch nicht nur scalles tun, was das Dienste-Snap-In tut, sondern auch Dienste installieren und deinstallieren.

Der scBefehl dupliziert einige Funktionen des netBefehls.

Die ReactOS-Version wurde von Ged Murphy entwickelt und steht unter der GPL .

sc Unterbefehle
Name Beschreibung Windows-Unterstützung ReactOS-Unterstützung
Anfrage Servicestatus anzeigen Jawohl Jawohl
Abfrageex Erweiterte Serviceinfos anzeigen (z. B. PID, Flags) Jawohl Jawohl
Anfang Starten Sie einen Dienst Jawohl Jawohl
Pause Einen Dienst pausieren Jawohl Jawohl
abfragen Jawohl Jawohl
fortsetzen Einen Dienst fortsetzen Jawohl Jawohl
halt Stoppen Sie einen Dienst Jawohl Jawohl
Konfiguration Jawohl Jawohl
Bezeichnung Servicebeschreibung ändern Jawohl Jawohl
Versagen Jawohl Jawohl
Fehlerflagge Jawohl Nein
Seitentyp Jawohl Nein
privat Jawohl Nein
verwaltetes Konto Jawohl Nein
qc Zeigen Sie die Dienstkonfiguration an (z. B. Abhängigkeiten, vollständiger Pfad usw.) Jawohl Jawohl
qBeschreibung Abfrage einer Servicebeschreibung Jawohl Jawohl
qFehler Jawohl Nein
qFailureflag Jawohl Nein
qsidtype Jawohl Nein
qprivs Jawohl Nein
qtriggerinfo Jawohl Nein
qbevorzugter Knoten Jawohl Nein
qverwaltetes Konto Jawohl Nein
qSchutz Jawohl Nein
quserservice Jawohl Nein
löschen Einen Dienst löschen Jawohl Jawohl
schaffen Erstellen Sie einen Dienst Jawohl Jawohl
Steuerung Jawohl Jawohl
sdshow Jawohl Jawohl
sdset Jawohl Jawohl
zeigt Jawohl Nein
Triggerinfo Jawohl Nein
bevorzugter Knoten Jawohl Nein
GetDisplayName Den Dienst DisplayName anzeigen Jawohl Jawohl
GetKeyName Zeigen Sie den Dienst ServiceKeyName an Jawohl Jawohl
EnumAbhängig Zeigen Sie die Service-Abhängigkeiten an Jawohl Jawohl
Stiefel Jawohl Nein
Sperren Jawohl Nein
AbfrageSperre Jawohl Nein

Beispiele

Das folgende Beispiel zählt den Status für aktive Dienste und Treiber auf.

C:\>sc query

Das folgende Beispiel zeigt den Status für den Windows-Ereignisprotokolldienst an.

C:\>sc query eventlog

Power Shell

Das Microsoft.PowerShell.Management PowerShell-Modul (im Lieferumfang von Windows enthalten) verfügt über mehrere Cmdlets, die zum Verwalten von Windows-Diensten verwendet werden können:

  • Get-Service
  • Neu-Service
  • Neustart-Service
  • Lebenslauf-Service
  • Set-Service
  • Dienst starten
  • Dienst anhalten
  • Suspend-Service

Andere Verwaltungstools

Windows enthält auch Komponenten, die eine Teilmenge dessen ausführen können, was das Snap-In, Sc.exe und PowerShell tun. Der netBefehl kann einen Windows-Dienst starten, stoppen, anhalten oder fortsetzen. In Windows Vista und höher kann der Windows Task-Manager eine Liste der installierten Dienste anzeigen und diese starten oder stoppen. MSConfig kann Windows-Dienste aktivieren oder deaktivieren (siehe Beschreibung des Starttyps oben).

Installation

Windows-Dienste werden über *.INF-Setup-Skripte von SetupAPI installiert und entfernt ; ein installierter Dienst kann unmittelbar nach seiner Installation gestartet werden und ein laufender Dienst kann vor seiner Deinstallation gestoppt werden.

Entwicklung

Schreiben von nativen Diensten

Damit ein Programm als Windows-Dienst ausgeführt werden kann, muss das Programm so geschrieben sein, dass es Start-, Stopp- und Pausierungsnachrichten des Dienststeuerungs-Managers (SCM) über die Systemdienste-API verarbeitet . SCM ist die Windows-Komponente, die für die Verwaltung von Dienstprozessen verantwortlich ist.

Anwendungen als Service verpacken

Das Windows Resource Kit für Windows NT 3.51 , Windows NT 4.0 und Windows 2000 bietet Tools zur Steuerung der Nutzung und Registrierung von Diensten: SrvAny.exefungiert als Service-Wrapper , um die von einem Dienst erwartete Schnittstelle zu handhaben (z. B. service_start handhaben und später mit service_started antworten oder service_failed) und lassen Sie jede ausführbare Datei oder jedes Skript als Dienst konfigurieren. Sc.exeermöglicht das Installieren, Starten, Stoppen und Deinstallieren neuer Dienste.

Siehe auch

Windows-Dienste
Konzept

Verweise

Weiterlesen

Externe Links