A volte hai bisogno di un'app o di uno script per continuare a funzionare indipendentemente dal fatto che tu abbia effettuato l'accesso al computer o meno. Forse è uno Script di PowerShell per monitorare le porte o un server web che ospita una pagina sulla rete domestica.
Il punto è che se vuoi che un processo, uno script o un programma venga eseguito finché il computer è acceso, dovrai creare un Servizio Windows.
Di cosa ho bisogno per creare un servizio Windows?
Per creare un servizio Windows in Windows 10, ci sono alcuni prerequisiti:
Che cos'è Gestione servizi non aspiranti?
Sì, non puoi scrivere un nome del genere senza spiegarlo. Certo il nome è sfortunato, ma è accurato. Il Non-Sucking Service Manager (NSSM) è probabilmente il modo più semplice per creare un servizio Windows che sia altamente affidabile e configurabile. Inoltre, è gratuito e Software open source (OSS).
NSSM può essere utilizzato tramite Prompt dei comandi di Windows o un'interfaccia utente grafica (GUI ). Ciò significa che chiunque può usarlo. NSSM può essere utilizzato su qualsiasi versione di Windows che risale a, incluso, Windows 2000. Ci sono versioni 32 bit e 64 bit. Se utilizzi un computer a 64 bit, prova prima quella versione. Se non funziona, torna alla versione a 32 bit.
Puoi scarica NSSM dal sito web, clonare NSSM da Git o installa NSSM con Chocolatey. Chocolatey è un gestore di pacchetti per Windows. I metodi di installazione variano a seconda del percorso che prendi. Si prega di consultare le istruzioni di NSSM. Per il nostro esempio, lo scarichiamo dal sito web di NSSM e lo installiamo in C: \ WINDOWS \ system32.
In_content_1 all: [300x250] / dfp: [640 x 360]->Crea un servizio Windows con NSSM
Per questo esempio, creeremo un servizio da Script di PowerShell per accedere Percentuale di carico medio della CPU.
Nota: tutte le righe seguenti seguite dal simbolo # sono commenti e non influenzeranno lo script.
CLS #Optional. I like to use this to clear the terminal when testing.#Make sure you have a folder called Logs in the same directory as this script #The log is where the records will be stored. Start-Transcript -Path "$PSScriptRoot\Logs\log-CPULoadPercentage-$(get-date -f yyyy-MM-dd).txt" -Append #While loop keeps it running until manually stopped While ($True){ #Creates a timestamp to know when the measurement was taken $timeStamp = get-date -f yyyy-MM-h:mm:ss #Gets the average load percentage at that time, then waits 5 seconds to do it again. $cpuLoadPercent = Get-CimInstance win32_processor | Measure-Object -Property LoadPercentage -Average | Select-Object Average;Start-Sleep -Seconds 5 #Isolates just the average so there isn't a weird @{Average=13} string $cpuLoadPercent = $cpuLoadPercent.Average #writes results to screen, or in this case to the log Write-Host "$timeStamp CPU Load Percentage $cpuLoadPercent" } Stop-Transcript
Ci sono molte altre schede che possono essere utilizzate per personalizzare il servizio. Per questo esercizio, i valori predefiniti in queste schede sono sufficienti. Seleziona il pulsante Installa servizio.
Rimozione di un servizio Windows Con NSSM
Forse non è più necessario caricare monitora la tua CPU, quindi ti piacerebbe sbarazzarti del servizio. Fortunatamente, NSSM lo rende facile.
Questo è tutto. È una buona idea controllare il gestore dei servizi per assicurarsi che il servizio non sia più disponibile. Se vedi ancora il servizio, potrebbe essere necessario aggiornare lo schermo e dovrebbe essere sparito.
I servizi sono un ottimo modo per eseguire app o script che devono essere sempre eseguiti, riavviarsi se falliscono o necessitano di privilegi diversi dall'utente corrente. Se non hai bisogno della tua app o script per fare tutte queste cose, considera invece utilizzando un'attività pianificata.