Ergebnis 1 bis 7 von 7

Thema: Script oder .bat um Windows Dienst automatisch neu zu starten bei Inaktivität

  1. #1
    Captain Jack Sparrow Avatar von Checcker
    Registriert
    Jun 2016
    Beiträge
    481
    Gefällt mir!
    48
    Du gefällst: 238

    Script oder .bat um Windows Dienst automatisch neu zu starten bei Inaktivität

    Hi,

    also hab einen Windows Dienst mit dem Namen sdnsplus. Möchte mit dem Script überprüfen lassen ob der Dienst aktiv ist, sollte das nicht der Fall sein soll dieser sofort neugestartet werden. Die Überprüfung soll in Dauerschleife stattfinden. Klar gibt es da auch die Aufgabenverwaltung oder die Funktion den Dienst automatisch neustarten zu lassen über Windows, allerdings nur nach 60 Sekunden. Daher würde hier nur ein Script oder eine .bat in Frage kommen. Gerne lasse ich dafür auch eine Kleinigkeit (BitCoins) springen.

  2. Werbung - Hier werben?
  3. #2
    Senior
    Registriert
    Jan 2018
    Beiträge
    308
    Gefällt mir!
    170
    Du gefällst: 131
    https://nssm.cc/

    nssm install <service_name>
    nssm status <service_name>

    wenn status nicht "SERVICE_RUNNING" ist
    nssm restart <service_name>

    wenn dir sowas reicht wäre das in paar zeilen in python bspw. geschrieben

    ____

    nssm hat auch ein restart modus aber ka ob das schon sowas ist was du suchst

  4. #3
    Anfänger Avatar von Syndalac
    Registriert
    Oct 2019
    Beiträge
    14
    Gefällt mir!
    1
    Du gefällst: 3

  5. Diesen Mitgliedern gefällt dieser Beitrag:


  6. #4
    Captain Jack Sparrow
    THEMENSTARTER

    Avatar von Checcker
    Registriert
    Jun 2016
    Beiträge
    481
    Gefällt mir!
    48
    Du gefällst: 238
    joa würde passen kann ruhig was einfaches sein Hauptsache es erfüllt seinen Zweck.

    Wäre das evtl nicht etwas einfacher, das einfach über die Shell von Windows laufen zu lassen mit einer Endlosschleife ?

  7. #5
    Senior
    Registriert
    Jan 2018
    Beiträge
    308
    Gefällt mir!
    170
    Du gefällst: 131
    habe null plan von .bat scripting aber für das was ich getestet habe ging das folge auf jeden

    @ECHO off
    :loop
    %*

    goto loop
    $ ./test.bat rclone size gdrive:/
    hat gdrive:/ unendlich gelooped

    kannst du ja mal testen

    also in python wäre das bissl besser zu lösen mit fehler erkennung etc

    edit// wenn du das programm immer gleich startest kannst du einfach %* mit deinen programm start + parameter austauschen
    also in diesem fall mit den rclone size gdrive:/ sachen

  8. #6
    Junior
    Registriert
    Oct 2019
    Beiträge
    48
    Gefällt mir!
    11
    Du gefällst: 53
    Oder so, so lasse ich rush neustarten wenn er abschüsselt:

    set ProgrammExe=ftprush.exe ->deine exe die starten soll (sollte auch mit service klappen)
    set ProgrammPfad="C:\Program Files (x86)\FTPRush" (der direkte Pfad ohne Slash!)
    set zeitSek=300 (wie oft soll geprüft werden? alle 300 sek = 5mins)

    einmal starten das wars...

    hF

    Code:
    @echo off
    set ProgrammExe=ftprush.exe
    set ProgrammPfad="C:\Program Files (x86)\FTPRush"
    set zeitSek=300
    cd /d "%ProgrammPfad%"
    :refresh
    set /a zeitMins=%zeitSek%/60
    cls
    tasklist|find "%ProgrammExe%">nul
    if not errorlevel 1 echo Programm laeuft noch&goto :time
    echo Programm wird gestartet...&start %ProgrammExe%
    :time
    echo Warte %zeitMins% Minuten...
    ping localhost -n 60>nul
    set /a zeitMins=%zeitMins%-1
    if "%zeitMins%"=="0" goto :refresh
    cls&goto :time
    Dein Neid ist meine Anerkennung, dein Hass mein Sieg!


  9. #7
    Senior Avatar von Hakkep3t3r
    Registriert
    Mar 2015
    Beiträge
    301
    Gefällt mir!
    92
    Du gefällst: 143
    Vielleicht so:

    Code:
    @echo off & setlocal
    :loop
    for /f "tokens=6 delims= " %%a in ('sc getkeyname "sdnsplus"') do set dienst=%%a
    echo Dienst: %dienst%
    set Status=
    for /f "tokens=3 skip=3 delims=: " %%b in ('sc query %dienst%') do if not defined Status set Status=%%b
    echo Status: %Status%
    if /i "%Status%" == "STOPPED" net start %dienst%
    goto loop
    Hab nen Teil von Google, aber funktioniert soweit. Durch den Loop kann sich der Dienst aber nicht mehr deaktivieren und es gibt ne Fehlermeldung...

    Oder erstellst ein task mit trigger "Bei Protokollierung eines bestimmten Ereignisses" und nimmst den loop wieder raus. Wenn der Dienst sich dauernd deaktiviert, wird ja irgendeine Meldung ausgegeben.

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 14.02.2020, 21:03
  2. (Erledigt) - Script in PHP oder sonstiger Sprache in Verbindung mit IT
    Von Checcker im Forum Entwickler / IT-Techniker
    Antworten: 0
    Letzter Beitrag: 09.02.2020, 11:52
  3. Starten mit aktueller Windows Version?
    Von Bitload.to im Forum IntelliTool.it
    Antworten: 1
    Letzter Beitrag: 17.01.2019, 21:10
  4. ProtonVPN: ProtonMail-Macher starten VPN-Dienst
    Von delle im Forum Datenschutz & Privatsphäre (IT-Security)
    Antworten: 6
    Letzter Beitrag: 17.12.2017, 20:00
  5. Windows 10 - Flop oder Top
    Von Phil im Forum Datenschutz & Privatsphäre (IT-Security)
    Antworten: 23
    Letzter Beitrag: 23.08.2015, 19:05

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
SzeneBox.org... im Mittelpunkt der Szene!
© since 2015 szeneBOX.org - All Rights Reserved
Domains: www.szenebox.org