WMI scripting template that runs the script against all the computers listed in an Excel spreadsheet named C:\Scripts\Servers.xls. The computer names should be listed in column A of the spreadsheet, one computer per row, and with no blank cells cells between rows. This script prompts you to enter a user name and password to be used when connecting to the remote computers; it also pings the relevant computer before trying to make a connection.

Visual Basic
Edit|Remove
On Error Resume Next

Const WbemAuthenticationLevelPktPrivacy = 6

strCredentials = InputBox _
    ("Please enter the user name, a blank space, and then the password:", _
        "Enter User Credentials")

If strCredentials = "" Then
    Wscript.Quit
End If

arrCredentials = Split(strCredentials," ")
strUser = arrCredentials(0)
strPassword = arrCredentials(1)
strNamespace = "root\cimv2"

Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open("C:\Scripts\servers.xls")
x = 1

Do Until objExcel.Cells(x, 1).Value = ""
    If objExcel.Cells(x, 1).Value = "" Then
        Exit Do
    End If

    strComputer = objExcel.Cells(x, 1).Value 

    Set objShell = CreateObject("WScript.Shell")
    strCommand = "%comspec% /c ping -n 3 -w 1000 " & strComputer & ""
    Set objExecObject = objShell.Exec(strCommand)

    Do While Not objExecObject.StdOut.AtEndOfStream
        strText = objExecObject.StdOut.ReadAll()
        If Instr(strText, "Reply") > 0 Then

            Set objWbemLocator = CreateObject("WbemScripting.SWbemLocator")
            Set objWMIService = objwbemLocator.ConnectServer _
                (strComputer, strNamespace, strUser, strPassword)
            objWMIService.Security_.authenticationLevel = WbemAuthenticationLevelPktPrivacy


            ' =====================================================================
            ' Insert your code here
            ' =====================================================================

            Set colItems = objWMIService.ExecQuery _
                ("Select * From Win32_OperatingSystem")
            For Each objItem in ColItems
                Wscript.Echo strComputer & ": " & objItem.Caption
            Next

            ' =====================================================================
            ' End
            ' =====================================================================

        Else
            Wscript.Echo strComputer & " could not be reached."
        End If
    Loop
    x = x + 1
Loop

objWorkbook.Close
objExcel.Quit