'==========================================================================
'
' NAME: SubnetChanger.vbs
'
' AUTHOR: Mark D. MacLachlan , The Spider's Parlor
' URL: [URL unfurl="true"]http://www.TheSpidersParlor.com[/URL]
' COPYRIGHT (c) 2006 All Rights Reserved
' DATE : 7/12/2006
'
' COMMENT: Changes the third octet in a static IP address.
'
'
' THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
' ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED To
' THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
' PARTICULAR PURPOSE.
'
' IN NO EVENT SHALL THE SPIDER'S PARLOR AND/OR ITS RESPECTIVE SUPPLIERS
' BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
' DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
' WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
' ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
' OF THIS CODE OR INFORMATION.
'
'==========================================================================
strComputer = "."
Const HKEY_LOCAL_MACHINE = &H80000002
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_
".\root\default:StdRegProv")
Set WSHShell = wscript.CreateObject("Wscript.Shell")
strKeyPath = "SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\"
oReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys
For Each subkey In arrSubKeys
IPAddr = WSHShell.RegRead("HKLM\" & strKeyPath & subkey & "\IPAddress")
For Each octetSTR In IPAddr
If octetSTR <> "0.0.0.0" Then
StaticIP = octetSTR
ActiveInterface = subkey
End If
Next
Next
IPArray = Split(StaticIP,".")
Select Case IPArray(2)
Case 1
strThirdOctet = 6
Case 16
strThirdOctet = 4
Case 17
strThirdOctet = 5
Case 18
strThirdOctet = 6
Case 19
strThirdOctet = 7
End Select
If IPArray(2) = "0" Then
NewIP = IPArray(0) & "." & IPArray(1) & "."& strThirdOctet & "." & IPArray(3)
End If
iValues = Array(NewIP)
IPRegLocation = strKeyPath & ActiveInterface
oReg.SetMultiStringValue HKEY_LOCAL_MACHINE,IPRegLocation,_
"IPAddress",iValues