23Aug

So führen Sie ein beliebiges Programm als Hintergrunddienst in Windows aus

click fraud protection

Wenn Sie wie die meisten Windows-Benutzer sind, haben Sie viele tolle kleine Dienstprogramme, die beim Start von Windows ausgeführt werden. Während dies für die meisten Apps gut funktioniert, gibt es einige, die sich gut starten lassen, bevor sich ein Benutzer am PC anmeldet. Dazu müssen Sie die App als Windows-Dienst ausführen.

Windows-Dienste sind eine spezielle Klasse von Programmen, die so konfiguriert sind, dass sie im Hintergrund gestartet und ausgeführt werden, normalerweise ohne irgendeine Art von Benutzeroberfläche und ohne dass sich ein Benutzer am PC anmelden muss. Viele Gamer und Power-User kennen sie als die Dinge, die Sie zuvor deaktiviert haben, um Ihr System zu beschleunigen, obwohl das wirklich nicht mehr nötig ist.

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 besonders bei Anwendungen wichtig sein, die wichtige Dienste bereitstellen, die Sie benötigen, wenn Sie nicht am Computer arbeiten.

instagram viewer
ZUGEHÖRIGE ARTIKEL
Windows-Dienste verstehen und verwalten
Sollten Sie Windows-Dienste deaktivieren, um Ihren PC zu beschleunigen?

Ein perfektes Beispiel hierfür ist Plex, eine Medienserver-App, die lokale Inhalte auf nahezu jedes Gerät streamen kann, das Ihnen gehört. Sicher, Sie könnten es in der Taskleiste wie ein normales Programm sitzen lassen, aber was passiert, wenn der Computer aufgrund eines Stromausfalls oder geplanten Updates neu gestartet wird? Bis zur erneuten Anmeldung am PC ist Plex nicht verfügbar. Das ist irritierend, wenn man in ein anderes Zimmer rennen muss, um Plex wieder hochzufahren, während das Popcorn kalt wird, und sehr irritierend, wenn man nicht in der Stadt ist und versucht, seine 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 Vorkehrungen treffen, um eine App als Dienst auszuführen:

  • Die App fügt kein Symbol in die Taskleiste ein. Wenn Sie die für eine App regelmäßig verfügbare Schnittstelle benötigen, ist sie möglicherweise nicht für die Ausführung als Dienst am besten geeignet.
  • Wenn Sie Konfigurationsänderungen oder Aktualisierungen vornehmen müssen, müssen Sie den Dienst beenden, das Programm als normale Anwendung ausführen, die erforderlichen Schritte ausführen, das Programm beenden und den Dienst anschließend erneut starten.
  • Wenn das Programm beim Start von Windows bereits eingerichtet wurde, müssen Sie es 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 Ihrem Autostart-Ordner hinzufügen, sodass Sie sie dort entfernen können.

Bereit zu rollen? Lassen Sie uns darüber reden, wie Sie es einrichten.

Schritt 1: SrvStart

installieren Um eine App als Dienst auszuführen, benötigen Sie ein kleines Hilfsprogramm von Drittanbietern. Es gibt einige da draußen, aber unser Favorit ist SrvStart. Es wurde ursprünglich für Windows NT entwickelt und funktioniert ab Windows XP mit fast jeder Windows-Version.

Um zu beginnen, gehen Sie auf die SrvStart-Download-Seite und greifen Sie auf das Dienstprogramm zu. Der Download enthält nur vier Dateien( zwei DLL- und zwei EXE-Dateien).Es gibt keinen Installer;Kopieren Sie diese stattdessen in den Ordner C: \ Windows Ihres Computers, um sie in Ihren Windows-Hauptordner zu verschieben, um SrvStart zu installieren.

Wir gehen auch davon aus, dass Sie bereits ein Programm installiert und eingerichtet haben, das Sie zu einem Dienst machen werden. Wenn Sie das nicht tun, wäre jetzt auch eine gute Zeit, dies zu tun.

Schritt 2: Erstellen einer Konfigurationsdatei für den neuen Dienst

Als Nächstes möchten Sie eine Konfigurationsdatei erstellen, die SrvStart zum Erstellen des Dienstes liest. Mit SrvStart können Sie viel tun, und Sie können die vollständigen Details zu allen Konfigurationsoptionen auf der Dokumentationsseite lesen. In diesem Beispiel werden wir nur zwei Befehle verwenden: startup, der das zu startende Programm angibt, und shutdown_method, das SrvStart mitteilt, wie das Programm geschlossen wird, wenn der entsprechende Dienst beendet 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. Der Startbefehl gibt einfach den Pfad an, in dem sich die ausführbare Datei befindet. Für den Befehl shutdown_method verwenden wir den Parameter winmessage, der bewirkt, dass SrvStart eine Windows-Meldung zum Schließen an alle vom Dienst geöffneten Fenster sendet.

[Plex] startup = "C: \ Programme( x86) \ Plex \ Plex Medienserver \ Plex Media Server.exe" shutdown_method = winmessage

Passen Sie den Pfad und den Namen natürlich an das Programm an, das Sie starten.

Speichern Sie die neue Konfigurationsdatei an beliebiger Stelle und ersetzen Sie die Erweiterung. txt durch die Erweiterung. ini. Notieren Sie sich den Dateinamen, da wir ihn im nächsten Schritt benötigen. Um die Eingabe an der Eingabeaufforderung zu vereinfachen, empfehlen wir, diese Datei vorübergehend auf Ihrem Laufwerk C: zu speichern.

Schritt 3: Verwenden der Eingabeaufforderung zum Erstellen des neuen Dienstes

Der nächste Schritt besteht darin, den Befehl Windows Service Controller( SC) zu verwenden, 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)" wählen und dann auf "Ja" klicken, damit das Programm mit Administratorrechten ausgeführt werden kann.

Verwenden Sie an der Eingabeaufforderung die folgende Syntax, um den neuen Dienst zu erstellen:

SC CREATE & lt; Servicename & gt;Displayname = "& lt; Servicename & gt;"binpath = "srvstart.exe & lt; Servicename & gt; -c & lt; Pfad zur srvstart Konfigurationsdatei & gt;"start = & lt; Starttyp & gt;

In diesem Befehl sind einige Dinge zu beachten. Zuerst hat jedes Gleichheitszeichen( =) ein Leerzeichen nach ihm. Das ist erforderlich. Auch der & lt; Servicename & gt;Wert liegt ganz bei Ihnen. Und schließlich für den & lt; Starttyp & gt;Wert, möchten Sie Auto verwenden, so dass der Dienst automatisch mit Windows gestartet wird.

Also in unserem Plex-Beispiel würde der Befehl so aussehen:

SC Plex erstellen Displayname = "Plex" binpath = "srvstart.exe Plex -c C: PlexService.ini" start = auto

Ja, das hast du richtig gelesen: Iverwendet C: PlexService.ini anstelle von C: \ PlexService.ini. Der Befehl erfordert, dass Sie den Schrägstrich entfernen.

Wenn Sie den Befehl ausführen, sollten Sie eine SUCCESS-Nachricht erhalten, wenn alles gut geht.

Ab diesem Zeitpunkt wird der neue Dienst bei jedem Start von Windows ausgeführt. Wenn Sie die Windows-Dienste-Oberflä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 starten und Sie lieber starten, ohne dass sich ein Benutzer anmelden muss, ist es einfach, aus jeder App einen Dienst zu machen. Wir haben gerade erst die grundlegende Methode zum Erstellen und Ausführen eines neuen Dienstes beschrieben, aber es gibt noch viel mehr, was Sie mit SrvStart tun können, um genau zu bestimmen, wie ein Dienst ausgeführt wird. Schauen Sie sich die Dokumentation an, wenn Sie mehr erfahren möchten.