Wenn Sie wie die meisten Windows-Benutzer sind, stehen Ihnen beim Starten von Windows viele großartige kleine Dienstprogramme zur Verfügung. Während dies für die meisten Apps hervorragend funktioniert, gibt es einige, die bereits gestartet werden sollten, bevor sich ein Benutzer am PC anmeldet. Dazu müssen Sie die App als Windows-Dienst ausführen.
Windows services sind eine spezielle Klasse von Programmen, die so konfiguriert sind, dass sie im Hintergrund gestartet und ausgeführt werden, normalerweise ohne jegliche Benutzeroberfläche und ohne dass sich ein Benutzer am PC anmelden muss. Viele Gamer und Power-User kennen sie jedoch als die Dinge, die Sie deaktiviert haben, um Ihr System zu beschleunigen das ist wirklich nicht mehr nötig .
Der Hauptvorteil beim Ausführen einer App als Dienst besteht darin, dass Sie ein Programm starten können, bevor sich ein Benutzer anmeldet. Dies kann insbesondere bei Apps wichtig sein, die wichtige Dienste bereitstellen, die verfügbar sein sollen, wenn Sie nicht an Ihrem Computer sind.
VERBUNDEN: Grundlegendes zu und Verwalten von Windows-Diensten
Ein perfektes Beispiel dafür ist Plex , eine Medienserver-App, die lokale Inhalte auf nahezu jedes Gerät streamen kann, das Sie besitzen. Sicher, Sie könnten es wie ein normales Programm in der Taskleiste liegen lassen, aber was ist, wenn der Computer aufgrund eines Stromausfalls oder geplanter Updates neu gestartet wird? Bis Sie sich wieder am PC anmelden, ist Plex nicht verfügbar. Das ist irritierend, wenn Sie in einen anderen Raum laufen müssen, um Plex wieder zu starten, während Ihr Popcorn kalt wird, und sehr irritierend, wenn Sie nicht in der Stadt sind und versuchen, Ihre Medien über das Internet zu streamen. Das Einrichten von Plex as a Service würde dieses Problem lösen.
Bevor Sie beginnen, sollten Sie einige wichtige Einschränkungen beim Ausführen einer App als Dienst beachten:
- Die App fügt kein Symbol in die Taskleiste ein. Wenn Sie die Schnittstelle benötigen, die regelmäßig für eine App verfügbar ist, ist sie möglicherweise nicht für die Ausführung als Dienst geeignet.
- Wenn Sie Konfigurationsänderungen oder -aktualisierungen vornehmen müssen, müssen Sie den Dienst beenden, das Programm als reguläre App ausführen, das tun, was Sie tun müssen, das Programm stoppen und den Dienst dann erneut starten.
- Wenn das Programm bereits für die Ausführung beim Start von Windows eingerichtet ist, müssen Sie dies deaktivieren, damit nicht zwei Instanzen ausgeführt werden. Die meisten Programme haben eine Option in der Benutzeroberfläche zum Umschalten dieser Einstellung. Andere können sich zu Ihrem hinzufügen Startordner , damit Sie sie dort entfernen können.
Bereit loszulegen? Lassen Sie uns darüber sprechen, wie Sie es einrichten.
Erster Schritt: Installieren Sie SrvStart
Um eine App als Dienst auszuführen, benötigen Sie ein kleines Dienstprogramm eines Drittanbieters. Es gibt mehrere da draußen, aber unser Favorit ist SrvStart . Es wurde ursprünglich für Windows NT entwickelt und funktioniert mit nahezu jeder Windows-Version ab Windows XP.
Um loszulegen, gehen Sie zum
SrvStart-Download-Seite
und greifen Sie zum Dienstprogramm. Der Download enthält nur vier Dateien (zwei DLL- und zwei EXE-Dateien). Es gibt kein Installationsprogramm. Kopieren Sie diese stattdessen auf Ihren Computer
C:\Windows
Ordnen Sie diese in Ihrem Windows-Hauptordner, um SrvStart zu „installieren“.
Wir gehen auch davon aus, dass Sie das Programm, das Sie in einen Dienst verwandeln möchten, bereits installiert und eingerichtet haben. Wenn Sie dies jedoch nicht tun, ist jetzt auch ein guter Zeitpunkt dafür.
Schritt 2: Erstellen Sie eine Konfigurationsdatei für den neuen Dienst
Als Nächstes möchten Sie eine Konfigurationsdatei erstellen, die SrvStart liest, um den Dienst zu erstellen. Mit SrvStart können Sie viel tun, und Sie können die vollständigen Details zu allen Konfigurationsoptionen auf der Website lesen
Dokumentationsseite
. In diesem Beispiel werden nur zwei Befehle verwendet:
Anlaufen
, das das zu startende Programm angibt, und
shutdown_method
Hiermit wird SrvStart mitgeteilt, wie das Programm geschlossen werden soll, wenn der jeweilige Dienst gestoppt wird.
Starten Sie Notepad und erstellen Sie Ihre Konfigurationsdatei im folgenden Format. Hier verwenden wir Plex, aber Sie können eine Datei für jedes Programm erstellen, das Sie als Dienst ausführen möchten. Das
Anlaufen
Der Befehl gibt einfach den Pfad an, in dem sich die ausführbare Datei befindet. Für die
shutdown_method
Befehl verwenden wir den
winmessage
Parameter, der SrvStart veranlasst, eine Windows-Abschlussnachricht an alle vom Dienst geöffneten Fenster zu senden.
[Plex] startup = "C: \ Programme (x86) \ Plex \ Plex Media Server \ Plex Media Server.exe" shutdown_method = winmessage
Passen Sie den Pfad und den Namen natürlich entsprechend dem Programm an, das Sie starten.
Speichern Sie die neue Konfigurationsdatei, wo immer Sie möchten, und ersetzen Sie die Erweiterung .txt durch eine Erweiterung .ini. Notieren Sie sich den Dateinamen, da wir ihn im nächsten Schritt benötigen. Zur Vereinfachung der Eingabe an der Eingabeaufforderung empfehlen wir, diese Datei vorübergehend direkt auf Ihrem Laufwerk C: zu speichern.
Schritt 3: Verwenden Sie die Eingabeaufforderung, um den neuen Dienst zu erstellen
Der nächste Schritt ist die Verwendung des Befehls Windows Service Controller (SC), um den neuen Dienst basierend auf den Kriterien in Ihrer Konfigurationsdatei zu erstellen. Öffnen Sie die Eingabeaufforderung, indem Sie mit der rechten Maustaste auf das Startmenü klicken (oder Windows + X drücken), "Eingabeaufforderung (Admin)" auswählen und dann auf "Ja" klicken, damit sie mit Administratorrechten ausgeführt werden kann.
Verwenden Sie an der Eingabeaufforderung die folgende Syntax, um den neuen Dienst zu erstellen:
SC CREATE <Servicename> Displayname = "<Servicename>" binpath = "srvstart.exe <Servicename> -c <Pfad zur srvstart-Konfigurationsdatei>" start = <starttype>
In diesem Befehl sind einige Dinge zu beachten. Erstens hat jedes Gleichheitszeichen (=) ein Leerzeichen danach. Das ist erforderlich. Auch die
<Servicename>
Wert liegt ganz bei Ihnen. Und schließlich für die
<starttype>
Wert, den Sie verwenden möchten
auto
Damit startet der Dienst automatisch mit Windows.
In unserem Plex-Beispiel würde der Befehl also so aussehen:
SC CREATE Plex Anzeigename = "Plex" binpath = "srvstart.exe Plex -c C: PlexService.ini" start = auto
Ja, das hast du richtig gelesen: Ich habe verwendet
C:PlexService.ini
Anstatt von
C:\PlexService.ini
. Für den Befehl müssen Sie den Schrägstrich entfernen.
Wenn Sie den Befehl ausführen, sollten Sie eine ERFOLGSMELDUNG erhalten, wenn alles gut geht.
Ab diesem Zeitpunkt wird Ihr neuer Dienst bei jedem Start von Windows ausgeführt. Wenn Sie die Windows-Dienstoberfläche öffnen (klicken Sie einfach auf Start und geben Sie "Dienste" ein), können Sie den neuen Dienst wie jeden anderen suchen und konfigurieren.
Und das ist alles. Wenn Sie Apps haben, die mit Windows beginnen und die lieber gestartet werden sollen, ohne dass sich ein Benutzer anmelden muss, ist es einfach genug, jede App in einen Dienst umzuwandeln. Wir haben gerade erst die grundlegende Methode zum Erstellen und Ausführen eines neuen Dienstes angesprochen, aber mit SrvStart können Sie noch viel mehr tun, um die Ausführung eines Dienstes zu optimieren. Lesen Sie unbedingt die Dokumentation, wenn Sie mehr erfahren möchten.