Come eseguire qualsiasi programma come servizio in background in Windows
Se sei come la maggior parte degli utenti di Windows, hai un sacco di grandi utilities che vengono eseguite all'avvio di Windows. Anche se questo funziona alla grande per la maggior parte delle app, ce ne sono alcune che potrebbero iniziare prima che un utente si colleghi al PC. Per fare ciò, è necessario eseguire l'app come servizio di Windows.
I servizi Windows sono una classe speciale di programmi configurati per l'avvio e l'esecuzione in background, in genere senza alcun tipo di interfaccia utente e senza che l'utente debba accedere al PC. Molti giocatori e utenti esperti li conoscono come quelli che hai disattivato per accelerare il tuo sistema, anche se questo non è più necessario.
Il vantaggio principale dell'esecuzione di un'app come servizio è che è possibile avviare un programma prima che un utente effettui il login. Ciò può essere particolarmente importante con le app che forniscono servizi importanti che si desidera siano disponibili quando si è lontani dal computer.
Un perfetto esempio di questo è Plex, un'app di media server in grado di trasmettere contenuti locali a quasi tutti i dispositivi che possiedi. Certo, potresti lasciarlo seduto nella barra delle applicazioni come un normale programma, ma cosa succede se il computer si riavvia a causa di un'interruzione dell'alimentazione o di aggiornamenti programmati? Fino a quando non si accede nuovamente al PC, Plex non sarebbe disponibile. Questo è irritante se devi correre in un'altra stanza per avviare il backup di Plex mentre il tuo popcorn diventa freddo, e super irritante se sei fuori città e stai cercando di diffondere i tuoi contenuti multimediali su Internet. La configurazione di Plex as a Service risolverebbe il problema.
Prima di iniziare, dovresti essere a conoscenza di un paio di importanti avvertimenti sull'esecuzione di un'app come servizio:
- L'app non inserirà un'icona nella barra delle applicazioni. Se hai bisogno di un'interfaccia disponibile regolarmente per un'app, potrebbe non essere la soluzione migliore per l'esecuzione come servizio.
- Quando è necessario apportare modifiche o aggiornamenti alla configurazione, è necessario interrompere il servizio, eseguire il programma come un'app normale, fare ciò che è necessario fare, arrestare il programma e quindi riavviare il servizio..
- Se il programma è già configurato per l'esecuzione all'avvio di Windows, sarà necessario disabilitarlo in modo da non finire con due istanze in esecuzione. La maggior parte dei programmi ha un'opzione nell'interfaccia per attivare questa impostazione. Altri possono aggiungersi alla tua cartella Startup, quindi puoi rimuoverli lì.
Pronto a rotolare? Parliamo di come configurarlo.
Passaggio uno: installare SrvStart
Per eseguire un'app come servizio, avrai bisogno di una piccola utility di terze parti. Ce ne sono diversi là fuori, ma il nostro preferito è SrvStart. È stato originariamente progettato per Windows NT e funzionerà con qualsiasi versione di Windows da Windows XP in su.
Per iniziare, vai alla pagina di download di SrvStart e prendi l'utility. Il download contiene solo quattro file (due DLL e due file EXE). Non c'è installatore; invece, copialo sul tuo computer C: \ Windows
cartella questi nella tua cartella principale di Windows per "installare" SrvStart.
Daremo anche per scontato che tu abbia già installato e impostato qualsiasi programma tu voglia trasformare in un servizio, ma se non lo hai, ora sarebbe un buon momento per farlo anche tu.
Passaggio 2: creare un file di configurazione per il nuovo servizio
Successivamente, ti consigliamo di creare un file di configurazione che SrvStart leggerà per creare il servizio. C'è molto che puoi fare con SrvStart, e puoi leggere tutti i dettagli su tutte le opzioni di configurazione nella pagina della documentazione. Per questo esempio, useremo solo due comandi: avviare
, che specifica il programma da avviare, e shutdown_method
, che dice a SrvStart come chiudere il programma quando viene arrestato il rispettivo servizio.
Avvia Blocco note e crea il tuo file di configurazione utilizzando il formato seguente. Qui, stiamo usando Plex, ma puoi creare un file per qualsiasi programma che vuoi eseguire come servizio. Il avviare
comando semplicemente specifica il percorso in cui risiede il file eseguibile. Per il shutdown_method
comando, stiamo usando il winmessage
parametro, che fa sì che SrvStart invii un messaggio di chiusura di Windows a qualsiasi finestra aperta dal servizio.
[Plex] startup = "C: \ Programmi (x86) \ Plex \ Plex Media Server \ Plex Media Server.exe" shutdown_method = winmessage
Ovviamente, regola il percorso e il nome in base al programma che stai lanciando.
Salva il nuovo file di configurazione dove preferisci e sostituisci l'estensione .txt con un'estensione .ini. Prendi nota del nome del file, poiché ne avremo bisogno nel prossimo passaggio. Per facilitare la digitazione al prompt dei comandi, ti suggeriamo di salvare questo file temporaneamente sul tuo disco C :..
Passaggio 3: utilizzare il prompt dei comandi per creare il nuovo servizio
Il passaggio successivo consiste nell'utilizzare il comando di Windows Service Controller (SC) per creare il nuovo servizio in base ai criteri nel file di configurazione. Apri Prompt dei comandi facendo clic con il pulsante destro del mouse sul menu Start (o premendo Windows + X), scegliendo "Prompt dei comandi (Admin)", quindi facendo clic su Sì per consentirne l'esecuzione con privilegi amministrativi.
Al prompt dei comandi, utilizzare la seguente sintassi per creare il nuovo servizio:
SC CREATE Displayname = "" binpath = "srvstart.exe -c" start =
Ci sono un paio di cose da notare in quel comando. Primo, ogni segno di uguale (=) ha uno spazio dopo di esso. Ciò che è necessario. Anche il il valore dipende interamente da te. E, infine, per il
valore, vorrete usare
auto
in modo che il servizio si avvii automaticamente con Windows.
Quindi nel nostro esempio di Plex, il comando sarebbe simile a questo:
SC CREATE Plex Displayname = "Plex" binpath = "srvstart.exe Plex -c C: PlexService.ini" start = auto
Sì, hai letto bene: l'ho usato C: PlexService.ini
invece di C: \ PlexService.ini
. Il comando richiede di rimuovere la barra.
Quando esegui il comando, dovresti ricevere un messaggio di SUCCESSO se tutto va bene.
Da questo momento in poi, il tuo nuovo servizio verrà eseguito ogni volta che viene avviato Windows. Se apri l'interfaccia dei servizi di Windows (fai semplicemente clic su Start e digita "Servizi"), puoi trovare e configurare il nuovo servizio come faresti con qualsiasi altro.
E questo è tutto ciò che c'è da fare. Se hai app che iniziano con Windows e preferisci che inizino senza bisogno di un utente per accedere, è abbastanza semplice trasformare qualsiasi app in un servizio. Abbiamo appena toccato il metodo di base per la creazione e l'esecuzione di un nuovo servizio, ma con SrvStart c'è molto altro da fare per ottimizzare l'esecuzione di un servizio. Assicurati di controllare la documentazione se desideri saperne di più.