MartyConnelly
martyconnelly at shaw.ca
Thu Nov 18 19:50:59 CST 2004
Those of you working on your BOFH certification might find this piece of code useful Or if you really want to get all those users out of your database so you can work on it. Or if you really want to renew a dhcp lease. You can run from vbs or Access VBA Here's a way to reboot a list of systems with a single keystroke. Replace the contents of the code between "Else" and "End if" statements in the script below that (renews DHCP leases on all computers) with the following: Set colOperatingSystems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") objTextFile.WriteLine(strComputer & " is rebooting.") For Each objOperatingSystem in colOperatingSystems ObjOperatingSystem.Reboot() Next 'computer.txt' is a file that contains a list of all network machine names ' well aside from your own. RebootFile = "computers.txt" LogFile = "results.txt" Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile(RebootFile, 1, True) Set objTextFile = fso.OpenTextFile(LogFile, 2, True) On Error resume next Do While f.AtEndOfLine <> True strComputer = f.ReadLine Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") If Err.Number <> 0 Then objTextFile.WriteLine(intCount & ". " & strComputer & " is not responding.") Err.Clear Else Set objNetworkSettings = objWMIService.Get("Win32_NetworkAdapterConfiguration") objNetworkSettings.RenewDHCPLeaseAll() objTextFile.WriteLine(strComputer & " has been renewed.") End If Loop -- Marty Connelly Victoria, B.C. Canada