Restart di un programma che gira regolarmente.

di DJByte il
11 risposte

Buongiorno a tutti. Ho un piccolo problema. Ho un software di regia webradio su un cloud con win10. Questo software fa accessi a MariaDb per le canzoni.  Non so quale sia il problema ma dopo x giorni (di solito tra i 40 ed i 50) di regolare servizio crasha con ovviamente perdita dello streaming. Chiedevo se fosse possibile, ad esempio, avere un programmino che a data e ora da input crea una sorta di restart forzato in modo da non raggiungere mai quella soglia critica. Altrimenti dovrei farlo io a mano ma preferirei pianificarlo.

Grazie per l'aiuto.

Stefano.

11 Risposte

  • Potresti fare un programmino in c# usando la classe Process per stoppare e startare il tuo programma ed usare la classe Timer per eseguire le operazioni ad un dato momento (dopo un dato intervallo) 

  • Per queste cose il Task Scheduler (Utilità di pianificazione) con uno script PowerShell è più che sufficiente e ti evita l'uso di prodotti di terze parti facendo fare tutto a Windows

  • C'e' il PsKill della suite Sysinternals 

  • Chiedo scusa sono un utilizzatore pratico ma neofita su scripts vari.  Sono disposto ovviamente a pagare la consulenza.. Necessito, con urgenza' di un sistema che ‘giri’ su un cloud win10 che a data presa da input, ‘uccida’ e faccia ripartire un determinato software, SAM.exe

    Non mi interessa cosa stia facendo in quel momento … deve essere un riavvio forzato… Purtroppo random si blocca e non riesco a ricevere feedback e per questo i clienti sono decisamente innervositi… Ho notato che il problema si presenta dopo xx giorni di lavoro.. QUindi l'ideale sarebbe ogni settiana forzare un restart.. Posso ovviamente farlo a mano ma un automatismo sarebbe l'ideale.

    Si evince ovviamente che sia un bug nell'iterazione tra il software e MariaDb ma purtroppo la software house sembra non capire la causa.

    Grazie.

  • Va beh, devi creare un file batch (ad esempio AutoKill.Bat) con due righe

    TASKKILL /F /IM SAM.exe /T >NUL
    START SAM.exe >NUL

    eventualmente aggiungendo il percorso completi di SAM.exe

    Poi crei una nuova attività nel Task Scheduler (Utilità di Pianificazione) in modo che il file AutoKill.bat (posto in una cartella a scelta) venga eseguito ogni settimana.

    E questo lo devi fare tu.

    P.S. Da fine agosto non hai risolto una cosa così banale, nonostante i suggerimenti?

  • Ma scusa, l'eseguibile si chiama

    SAMBC.exe

    o

    SAM.exe

    ??

  • Ho risolto grazie…

    Lo script corretto è: TASKKILL /F /IM SAMBC.exe /T >NUL
    START  /D "C:\Program Files (x86)\SpacialAudio\SAMBC20191\" SAMBC.exe > NUL

  • Beh, ovvio avevo scritto SMB.exe dato che così avevi scritto all'inizio.

    Fra l'altro avevi corretto la prima linea ma non la seconda dell'esempio che ti avevo suggerito.

  • Devo dire che la prima funziona (trova il task e lo killa) per la seconda è necessario il path…  

    Grazie infinite.

  • Sicuramente il percorso dell'eseguibile non è nella variabile d'ambiente (PATH) e quindi è necessario tutto il path.

    Ovviamente con il nome giusto SAMBC.exe e non SAM.exe

Devi accedere o registrarti per scrivere nel forum
11 risposte