Es kann in einigen Situationen sinnvoll sein, Windows Dienste regelmäßig und automatisiert neu zu starten.
Sei es weil die Dienste einen regelmäßigen Neustart benötigen oder um Problemen direkt vorzubeugen.
Dazu ist lediglich ein einfaches Batch-Skript nötig (ja richtig gelesen, kein Powershell).
Das Skript sieht wie folgt aus:
@echo off
REM set service as variable, %~1 = passed from the task planner
set ServiceName=%~1
SC queryex "%ServiceName%" | find "STATE" | find /v "RUNNING" >nul && (
echo "%ServiceName%" not running
echo Start "%ServiceName%"
net start "%ServiceName%" >nul || (
echo "%ServiceName%" wont start
exit /b 1
)
echo "%ServiceName%" started
exit /b 0
) || (
echo "%ServiceName%" running and working
exit /b 0
)
Speichern Sie diese Datei z.B. als service_restart.bat
unter C:\Windows ab.
Das Skript ist universal und unter allen Sprachen von Windows nutzbar.
Im Anschluss muss dazu noch ein Aufgabenplan erstellt werden, der das Skript zur gewünschten Uhrzeit automatisch ausführt.
Starten Sie hierzu die Aufgabenplanung über Start -> Ausführen -> taskschd.msc
Klicken Sie hier links auf Aufgabenplanungsbibliothek und mittels Rechtsklick können Sie eine neue, einfache Aufgabe erstellen:
Nun folgen Sie dem Wizard, der den Rest der Aufgabenplanung vorgibt.
Nach dem Abschluss öffnen Sie noch die Eigenschaften und stellen Sie den rot umrandeten Punkt ein.
Sie werden dann noch zur Eingabe eines Benutzer und Kennworts aufgefordert mit administrativen Rechten auf dem Rechner.
Nach dem der Benutzer und das Kennwort eingegeben wurde wird das Programm zu den gewünschten Zeiten ausgeführt, unabhängig davon, ob ein Benutzer angemeldet ist oder nicht.
Haben auch Sie Fragen zu Ihren Diensten auf einem Windows-Rechner? Zögern Sie nicht uns zu kontaktieren: https://www.admin-intelligence.de/kontakt/
- QuickTip: Alle Benutzer auf einem Windows Server benachrichtigen - 19. Juni 2024
- BookStack: Eine moderne Alternative zu klassischen Wiki-Systemen - 17. Mai 2024
- Windows-Sandbox – die sichere Testumgebung - 7. März 2024