'========================================================================== ' ' VBScript: AUTHOR: Ed Wilson , MS, 11/09/2003 ' ' NAME: ' ' COMMENT: Key concepts are listed below: '1. making connection to AD '2. Controlling results by using a filter '3. Using WMI to enable DHCP '4. Using status codes to determine sucess or failure ' REVISIONS: ' 11/10/2003 connection string - split into parts ' 11/11/2003 added computer filter to query ' 11/12/2003 changed names of variables from obj to o '========================================================================== Option Explicit 'On Error Resume Next dim qQuery dim oConnection dim oCommand dim oRecordSet Dim oDom Dim oProvider Dim oOU Dim Target, oWMIService, colNetAdapters, oNetAdapter, errEnable oProvider = "'LDAP://" oDom = "dc=nwtraders, dc=msft'" oOU = "ou=workstations," qQuery = "Select Name from " & oProvider _ & oOU & oDom & "where objectClass='computer'" Set oConnection = CreateObject("ADODB.Connection") Set oCommand = CreateObject("ADODB.Command") oConnection.Open "Provider=ADsDSOObject;" oCommand.ActiveConnection = oConnection oCommand.CommandText = qQuery Set oRecordSet = oCommand.Execute While Not oRecordSet.EOF Target= oRecordSet.Fields("name") Set oWMIService = GetObject("winmgmts:\\" & Target & "\root\cimv2") Set colNetAdapters = oWMIService.ExecQuery _ ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE") For Each oNetAdapter In colNetAdapters errEnable = oNetAdapter.EnableDHCP() If errEnable = 0 Then Wscript.Echo "DHCP has been enabled." Else Wscript.Echo "DHCP could not be enabled." End If Next oRecordSet.MoveNext Wend oConnection.Close