WMI scripting template that runs the script against one more more computers whose names are entered in an input box. This script prompts you to enter a user name and password to be used when connecting to the remote computers. When entering multiple computer names in the input box, names should be separated using blanks spaces. For example: atl-ws-01 atl-ws-02 atl-ws-03.
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 objNetwork = CreateObject("Wscript.Network") strLocalComputer = objNetwork.ComputerName strComputers = InputBox _ ("Please enter the names of the computers you want to connect to:", _ "Enter Computer Name", strLocalComputer) If strComputers = "" Then Wscript.QUit End If arrComputers = Split(strComputers, " ") For Each strComputer in arrComputers 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 ' ===================================================================== Next
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 objNetwork = CreateObject("Wscript.Network") strLocalComputer = objNetwork.ComputerName strComputers = InputBox _ ("Please enter the names of the computers you want to connect to:", _ "Enter Computer Name", strLocalComputer) If strComputers = "" Then Wscript.QUit End If arrComputers = Split(strComputers, " ") For Each strComputer in arrComputers 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 ' ===================================================================== Next