Script per ottenere l’elenco dei servizi in esecuzione

Tramite il seguente script è possibile ottenere un file csv (nella stessa directory dello script) con l’elenco dei servizi in esecuzione nel seguente formato:

image

In questo modo è possibile visualizzare velocemente il nome visualizzato, il nome del servizio, la modalità di avvio e l’account con cui viene eseguito il servizio

Option Explicit

Const LogFilename = “ServicesList.csv”
Const ForAppending = 8

Dim fso, logFile, wmiService, runningServices, service

Set fso = CreateObject(“Scripting.FileSystemObject”)

If fso.FileExists(LogFilename) Then
fso.DeleteFile(LogFilename)
End If

Set logFile = fSO.OpenTextFile(“ServicesList.csv”, ForAppending, True)
logFile.Write(“Display Name;Service Name;Start Mode;Account”)
logFile.WriteLine

Set wmiService = GetObject( _
“winmgmts:” & “{impersonationLevel=impersonate}!\\.\root\cimv2”)
Set runningServices = wmiService.ExecQuery( _
“Select * from Win32_Service Where State = ‘Running'”)

For Each service in runningServices
logFile.Write(service.DisplayName) & “;”
logFIle.Write(service.Name) & “;”
logFIle.Write(service.StartMode) & “;”
logFile.Write(service.StartName) & “;”
logFile.WriteLine
Next

logFile.Close

‘Rilascio risorse
Set logFile = Nothing
Set fso = Nothing
Set wmiService = Nothing
Set runningServices = Nothing
Set service = Nothing

Per ulteriori spunti su come estendere lo script si vedano: