' ============================================================
' GetServiceReport.vbs
'
' Reports Services via WMI (Win32_Service).
'
' Usage: cscript GetServiceReport.vbs
' ============================================================

Option Explicit

Dim objWMIService, colItems, objItem, strOutput

Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("SELECT Name, DisplayName, State, StartMode, Status FROM Win32_Service")

strOutput = ""
For Each objItem In colItems
    strOutput = strOutput & "Name: " & objItem.Name & vbCrLf
    strOutput = strOutput & "DisplayName: " & objItem.DisplayName & vbCrLf
    strOutput = strOutput & "State: " & objItem.State & vbCrLf
    strOutput = strOutput & "StartMode: " & objItem.StartMode & vbCrLf
    strOutput = strOutput & "Status: " & objItem.Status & vbCrLf
    strOutput = strOutput & String(40, "-") & vbCrLf
Next

If strOutput = "" Then
    WScript.Echo "No Services found."
Else
    WScript.Echo strOutput
End If