App Service Manager

Warum Programme als Dienst ausführen?

Überblick

Der ISW App Service Manager ermöglicht es Ihnen, beliebige Windows-Anwendungen als Windows-Dienste auszuführen. Dies löst ein häufiges Problem in der Windows-Administration: Viele Programme (z.B. Node.js-Server, Python-Skripte, PowerShell-Skripte eigene Anwendungen) können nicht nativ als Windows-Dienst laufen.

Lizenzierung

Gute Software muss nicht teuer sein.

Einmalig 129,00 € (inkl. 19% MwSt.)

  • Standortlizenz ohne Benutzerbegrenzung
  • Keine Folgekosten, keine Abonnements
  • Kostenlose Updates innerhalb der Hauptversion

Als private Lizenz 39,00 € (inkl. 19% MwSt.)

Produkthandbuch App Service Manager

FREE DOWNLOAD

Send download link to:

Ich bestätige, die Datenschutzerklärung gelesen zu haben.


Automatischer Start beim Systemstart

Programme starten automatisch beim Hochfahren des Computers – ohne dass sich ein Benutzer anmelden muss. Dies ist ideal für Server, die nach einem Neustart sofort wieder verfügbar sein sollen.

Konfigurationsdialog - Tab "Neustart"

Hintergrundausführung

Das Programm läuft im Hintergrund ohne sichtbares Fenster. Benutzer können sich an- und abmelden, ohne dass der Dienst beendet wird. Das Programm läuft auch, wenn niemand am Computer angemeldet ist.

Automatischer Neustart bei Absturz

Stürzt das Programm ab, wird es automatisch neu gestartet. Sie können die Verzögerung und maximale Anzahl der Neustarts konfigurieren. Dies erhöht die Verfügbarkeit Ihrer Anwendungen erheblich.

Zentrale Verwaltung

Alle konfigurierten Dienste werden an einem Ort verwaltet. Start, Stop und Neustart sind über die Windows-Dienstverwaltung oder diese GUI möglich. Einheitliches Logging erleichtert die Fehlersuche.

Typische Anwendungsfälle

  • Webserver (Node.js, Python Flask/Django): Soll 24/7 laufen, auch ohne Benutzeranmeldung
  • Backup-Tools: Müssen nachts laufen, wenn niemand am PC arbeitet
  • Monitoring-Agents: Müssen permanent aktiv sein, um Systeme zu überwachen
  • Synchronisations-Tools: Müssen im Hintergrund Dateien synchronisieren
  • PowerShell/Batch-Scripte: Als Dienst für wiederkehrende Aufgaben ausführen
  • Legacy-Anwendungen: Alte Programme ohne native Dienst-Unterstützung

Welche Programme können als Dienst laufen?

Wichtig: Nicht jedes Programm kann als Windows-Dienst ausgeführt werden! Lesen Sie dieses Kapitel sorgfältig, bevor Sie einen Dienst einrichten.

Das Problem: Session 0 Isolation

Seit Windows Vista laufen alle Windows-Dienste in einer speziellen Session namens “Session 0”. Diese Session hat keinen Desktop – es gibt keinen Monitor, keine Tastatur und keine Maus. Programme, die eine grafische Benutzeroberfläche (GUI) benötigen, können daher nicht als Dienst laufen.

Session Beschreibung
Session 0 Dienste – kein Desktop, kein Monitor, keine GUI möglich
Session 1 Erster angemeldeter Benutzer – Desktop, Monitor, GUI verfügbar
Session 2+ Weitere Benutzer (z.B. Remote Desktop Verbindungen)

Programme die funktionieren

Programmtyp Beispiele Warum es funktioniert
Konsolenanwendungen node.exe, python.exe, java.exe Laufen ohne GUI, nutzen nur Konsole
Server-Anwendungen nginx, Apache, Redis, MongoDB Für Hintergrundausführung entwickelt
Scripte PowerShell, Batch, Python Über Interpreter aufrufbar
CLI-Tools Eigene Kommandozeilen-Tools Keine Benutzerinteraktion nötig

Programme die NICHT funktionieren

Programmtyp Beispiele Warum es scheitert
GUI-Anwendungen Notepad, Word, WPF/WinForms Apps Brauchen Desktop zum Anzeigen
Interaktive Programme Programme mit Eingabeaufforderung Kein Benutzer zum Eingeben da
Tray-Anwendungen Programme mit Tray-Icon Kein System-Tray in Session 0
Alte Desktop-Apps Legacy-Software mit GUI Session 0 Isolation seit Vista

Schnelltest: Kann mein Programm als Dienst laufen?

Beantworten Sie folgende Fragen:

  1. Hat das Programm ein Fenster oder eine grafische Oberfläche? → Wenn ja: Nicht geeignet
  2. Wartet das Programm auf Tastatureingaben? → Wenn ja: Nicht geeignet
  3. Zeigt das Programm ein Icon im System-Tray? → Wenn ja: Nicht geeignet
  4. Läuft das Programm in einem Konsolenfenster (schwarzes Fenster)? → Wenn ja: Wahrscheinlich geeignet

Alternativen für GUI-Programme

Wenn Ihr Programm eine GUI benötigt, haben Sie folgende Alternativen:

Option 1: Autostart-Ordner (empfohlen für einfache Fälle)

Legen Sie eine Verknüpfung zum Programm im Autostart-Ordner ab. Das Programm startet dann automatisch bei der Benutzeranmeldung. Pfad: %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup

Option 2: Aufgabenplanung (Task Scheduler)

Erstellen Sie eine geplante Aufgabe, die das Programm bei Anmeldung startet:

schtasks /create /tn “MeinProgramm” /tr “C:\Pfad\Programm.exe” /sc onlogon

Option 3: Programm aufteilen (für Entwickler)

Teilen Sie Ihr Programm in zwei Komponenten auf: Einen Dienst ohne GUI für die Hintergrundlogik und eine GUI-Anwendung, die mit dem Dienst kommuniziert (z.B. über Named Pipes, TCP oder REST-API).

Dateien

Die Anwendung besteht aus zwei Komponenten:

  • AppServiceManager.exe: Die grafische Benutzeroberfläche zur Verwaltung
  • exe: Der Windows-Dienst-Wrapper, der Ihre Anwendungen hostet

Die Benutzeroberfläche

Hauptfenster

Das Hauptfenster zeigt alle konfigurierten Dienste in einer Tabelle mit folgenden Spalten:

Spalte Beschreibung
Service Name Technischer Name des Windows-Dienstes
Anzeigename Benutzerfreundlicher Name für die Anzeige
Anwendung Name der ausgeführten Programmdatei
Status Aktueller Status: Läuft (grün), Gestoppt (grau), Startet…/Stoppt… (orange)
PID Prozess-ID des laufenden Dienstes
Starttyp Automatisch, Automatisch (Verzögert), Manuell oder Deaktiviert

App Service Manager

Schaltflächen

Schaltfläche Funktion
Hinzufügen Öffnet den Dialog zum Erstellen eines neuen Dienstes
Bearbeiten Öffnet den Dialog zum Bearbeiten des ausgewählten Dienstes
Entfernen Deinstalliert den Dienst und löscht die Konfiguration
Starten Startet den ausgewählten Dienst
Stoppen Stoppt den ausgewählten Dienst
Neu starten Stoppt und startet den Dienst neu
Logs öffnen Öffnet das Log-Verzeichnis im Windows Explorer
Aktualisieren Lädt die Dienst-Liste und Status neu

Schaltflächen

Hinweis: Die GUI aktualisiert den Status automatisch alle 5 Sekunden. ISWServiceHost.exe läuft unabhängig von der GUI weiter – Sie können die GUI jederzeit schließen, ohne dass die Dienste gestoppt werden.

Einen neuen Dienst erstellen

Schritt-für-Schritt-Anleitung

  1. Klicken Sie auf “Hinzufügen” oder wählen Sie Datei → Service hinzufügen
  2. Geben Sie einen eindeutigen Service-Namen ein (z.B. “MeinWebServer”)
  3. Geben Sie einen benutzerfreundlichen Anzeigenamen ein
  4. Wählen Sie die auszuführende Programmdatei über “Durchsuchen”
  5. Konfigurieren Sie optionale Einstellungen in den anderen Tabs
  6. Klicken Sie auf “OK” um den Dienst zu erstellen und zu installieren

Konfigurationsdialog – Tab “Allgemein“

  • Service Name: Eindeutiger technischer Name (keine Leerzeichen)
  • Anzeigename: Benutzerfreundlicher Name für die Windows-Dienstverwaltung
  • Beschreibung: Optionale Beschreibung des Dienstes
  • Starttyp: Wann der Dienst gestartet werden soll

Einen neuen Dienst erstellen

Konfigurationsdialog – Tab “Anwendung”

  • Programmpfad: Vollständiger Pfad zur ausführbaren Datei (.exe)
  • Argumente: Kommandozeilenargumente für das Programm
  • Arbeitsverzeichnis: Verzeichnis, in dem das Programm gestartet wird
  • Priorität: Prozesspriorität (Normal empfohlen)

Konfigurationsdialog Tab Anwendung

Konfigurationsdialog – Tab “Neustart”

  • Neustart-Verhalten: Nie, Immer, Bei Fehler oder Verzögert
  • Verzögerung: Wartezeit in Millisekunden vor dem Neustart
  • Neustarts: Maximale Anzahl aufeinanderfolgender Neustarts
  • Reset-Periode: Nach dieser Zeit wird der Neustart-Zähler zurückgesetzt

Konfigurationsdialog - Tab "Neustart"

Konfigurationsdialog – Tab “Logging”

  • Logging aktivieren: Aktiviert die Ausgabeumleitung in Log-Dateien
  • Log-Verzeichnis: Speicherort für Log-Dateien
  • Log-Größe: Maximale Größe einer Log-Datei in MB
  • Log-Dateien: Anzahl der aufzubewahrenden Log-Dateien

Konfigurationsdialog Tab Logging

Konfigurationsdialog – Tab “Anmeldung”

  • Standardmäßig laufen die Dienste als „SYSTEM“.
  • Sofern notwendig kann auch ein Benutzer mit Passwort hinterlegt werden.
  • Der Benutzer muss das Recht “Anmelden als Dienst” haben

Konfigurationsdialog Tab Anmeldung

Templates

Mit Templates können Sie Dienstkonfigurationen speichern und wiederverwenden. Dies ist besonders nützlich, wenn Sie ähnliche Dienste auf mehreren Computern einrichten möchten.

Template exportieren

  1. Wählen Sie einen Dienst in der Liste aus
  2. Wählen Sie Datei → Template exportieren oder Service → Als Template speichern
  3. Wählen Sie einen Speicherort und Dateinamen

Template importieren

  1. Wählen Sie Datei → Template importieren
  2. Wählen Sie die Template-Datei (.isw-template oder .json)
  3. Der Konfigurationsdialog öffnet sich mit den vorausgefüllten Werten
  4. Passen Sie Namen und Pfade an und klicken Sie auf OK

Hinweis: Templates enthalten aus Sicherheitsgründen keine Anmeldedaten (Benutzername/Passwort).

Speicherorte

Daten Pfad
Konfiguration C:\ProgramData\ISW\AppServiceManager\Services\
Log-Dateien C:\ProgramData\ISW\AppServiceManager\Logs\<ServiceName>\

Windows-Ereignisprotokoll

Der ISW App Service Manager schreibt wichtige Ereignisse in das Windows-Ereignisprotokoll. Sie finden die Einträge in der Ereignisanzeige unter “Windows-Protokolle → Anwendung” mit dem Service-Namen als Quelle.

Ereignisse öffnen

  1. Drücken Sie Win+R und geben Sie “eventvwr.msc” ein
  2. Navigieren Sie zu “Windows-Protokolle → Anwendung”
  3. Filtern Sie nach “Quelle” mit Ihrem Service-Namen

Informations-Ereignisse

Ereignis Beschreibung
Service starting: [Name] Service wird gestartet
Executable: [Pfad] Konfiguration wurde geladen
Starting child process: [Pfad] Anwendung wird gestartet
Child process started. PID: [ID] Anwendung läuft
Service stop requested Stop-Befehl empfangen
Stopping child process… Anwendung wird beendet
Sent Ctrl+C signal to process Graceful Shutdown initiiert
Child process stopped. Exit code: [X] Anwendung beendet
Restarting in [X]ms (attempt N/Max) Neustart geplant
Service stopped Service vollständig gestoppt

Warnungen

Ereignis Beschreibung
Child process exited unexpectedly. Exit code: [X] Anwendung ist abgestürzt oder wurde unerwartet beendet
Process did not stop gracefully. Terminating… Anwendung reagiert nicht, wird beendet (Kill)
Failed to write to log file Log-Datei konnte nicht geschrieben werden
Failed to rotate log file Log-Rotation fehlgeschlagen

Fehler

Ereignis Beschreibung
Configuration not found: [Pfad] Service-Konfiguration fehlt
Failed to start child process Anwendung konnte nicht gestartet werden
Failed to start process: [Message] Start-Fehler mit Details
Max restart count exceeded. Stopping. Maximale Neustarts erreicht
Error stopping process: [Message] Fehler beim Beenden

 

App Service Manager – Es ist besser, wenn man weiß das die Dinge einfach laufen

Teil der ISW-Tools Suite von IT-Service Walter

© 2026 IT-Service Walter | Alle Rechte vorbehalten