Dim strQuery, strServer, strGroup dim oGroup, oWSH, oFSO, oLogfile, oInputFile dim blnServerUp, aServers, i, Group, Member Set oWSH = CreateObject("Wscript.Shell") Set oFSO = CreateObject("Scripting.FileSystemObject") Set oLogFile = oFSO.OpenTextFile("output.log", 8, True) Set oInputFile = oFSO.OpenTextFile("servers.txt", 1) strInput = oInputFile.ReadAll() aServers = Split(strInput, vbCrLf) oInputFile.Close Set oInputFile = Nothing ' Main Loop Trace "----------------------------------------------------------------" Trace "EnumGroupUsers.vbs started: " & Date & " -- " & Time Trace "----------------------------------------------------------------" For i = 0 to UBound(aServers) If aServers(i) <> "" Then strServer = aServers(i) ' Retrieve Server Name Call ServerUp(strServer) ' Check to see if server is up If blnServerUp = True Then Trace strServer Call EnumServer(strServer) Else Trace strServer & vbTab & "Offline" End If End If Next Trace "----------------------------------------------------------------" Trace "Script Completed at: " & Time Trace "----------------------------------------------------------------" oWSH.Run "notepad.exe output.log" Set oGroup = Nothing Set oLogFile = Nothing Set oFSO = Nothing Set oWSH = Nothing Wscript.Quit '------------------= Functions and SubRoutines =------------------- '------------------------------------------------------------------ Function EnumServer(Server) strGroup = "Administrators" Set oGroup = GetObject("WinNT://" & strServer & "/" & strGroup & ",group") For each Member in oGroup.Members 'Trace strServer & vbTab & vbCrLf & _ Trace "---" & Member.Name Next End Function Sub ServerUp(Server) Err.Clear blnServerUp = True ' Make an assumption If oFSO.DriveExists("\\" & Server & "\" & "ADMIN$") = False Then blnServerUp = False Else If Err.Number <> 0 Then blnServerUp = False End If End If End Sub ' Logging Sub Routine Sub Trace(LogInfo) oLogFile.WriteLine LogInfo End Sub