Here’s an example:
On Error Resume Next ' ################################################# 'Select the number of characters on the left that need to be checked ' Note the following situations: ' 10.150.9. <-- check on charleft=9 including trailing "."! ' 10.150.10 ' 10.150.11 ' or ' 10.150.99. <-- check on charleft=10 including trailing "."! ' 10.150.100 ' 10.150.101 Const charleft = 10 ' ################################################# Const HKEY_LOCAL_MACHINE = &H80000002 strComputer = "." Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\" & ".\root\default:StdRegProv") Set WSHShell = CreateObject("Wscript.Shell") Set WSHNetwork = CreateObject("WScript.Network") strKeyPath = "SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces" oReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys For Each subkey In arrSubKeys DHCPAddress = WSHShell.RegRead("HKLM" & strKeyPath & subkey & "\DhcpIPAddress") 'Skip disconnected adapters and apipa addresses (failed dhcp) If DHCPAddress <> "0.0.0.0" And Left(DHCPAddress,3) <> "169" Then 'wscript.echo "Interface " + subkey + " = " + DHCPAddress TestOctet1 = left(DHCPAddress, int(charleft)) Select Case TestOctet1 case "10.150.123" 'location A with 1 ip range WScript.Echo "this is location A" 'actions for location A WSHNetwork.AddWindowsPrinterConnection "\\printserver\main_printer_location_A" WSHNetwork.MapNetworkDrive "L:", "\\NT2000\data_location_A" case "10.150.99.","10.150.101" 'location B with 2 ranges, note the first range with trailing "." because it's shorter WScript.Echo "this is location B" 'actions for location A WSHNetwork.AddWindowsPrinterConnection "\\printserver\main_printer_location_B" WSHNetwork.MapNetworkDrive "L:", "\\NT2000\data_location_B" case "192.168.2","10.150.102","10.234.234" 'location C with 3 ranges WScript.Echo "this is location C" 'actions for location A WSHNetwork.AddWindowsPrinterConnection "\\printserver\main_printer_location_C" WSHNetwork.MapNetworkDrive "L:", "\\NT2000\data_location_C" case "10.22.164","10.22.165" 'location D with 2 ranges WScript.Echo "this is location D" 'actions for location A WSHNetwork.AddWindowsPrinterConnection "\\printserver\main_printer_location_D" WSHNetwork.MapNetworkDrive "L:", "\\NT2000\data_location_D" End Select End If Next