Networking Forums

Networking Forums > Wireless Networking > Wireless Internet > Windows VBScript to renew DHCP & display status

Reply
Thread Tools Display Modes

Windows VBScript to renew DHCP & display status

 
 
John Navas
Guest
Posts: n/a

 
      07-12-2006, 03:35 PM
' FIXDHCP V0.1, COPYRIGHT 2006 JOHN NAVAS
' FREE FOR PERSONAL NON-COMMERCIAL USE
' RELEASE AND RENEW ALL DHCP ADDRESSES, THEN RUN IPCONFIG /ALL

On Error Resume Next

' FORCE USE OF CSCRIPT INSTEAD OF WSCRIPT
UseCscript
Set objStdOut = WScript.StdOut

Dim WshShell, oExec
Set WshShell = CreateObject("WScript.Shell")

' DISPLAY OS AND VERSION
Set oExec = WshShell.Exec("%COMSPEC% /C VER")
output = ""
Do While Not oExec.StdOut.AtEndOfStream
output = output & oExec.StdOut.ReadAll
WScript.Sleep 100
Loop
objStdOut.WriteLine output

Dim RetVal
Dim AdapterConfig
Set AdapterConfig = GetObject("winmgmts:Win32_NetworkAdapterConfigurat ion")

objStdOut.Write "Release IP Address for all installed network adapters..."
RetVal = AdapterConfig.ReleaseDHCPLeaseAll
If RetVal = 0 Then
objStdOut.WriteLine "success."
Else
objStdOut.WriteLine "failure!"
End If

seconds = 10
objStdOut.Write "Sleeping for " & seconds & " seconds..."
WScript.Sleep seconds * 1000
objStdOut.WriteLine "done."

objStdOut.Write "Renew IP Address for all installed network adapters..."
RetVal = AdapterConfig.RenewDHCPLeaseAll
If RetVal = 0 Then
objStdOut.WriteLine "success."
Else
objStdOut.WriteLine "failure!"
End If

objStdOut.WriteBlankLines 1

Cmd = "IPCONFIG /ALL"
Set oExec = WshShell.Exec(Cmd)
output = ""
Do While Not oExec.StdOut.AtEndOfStream
output = output & oExec.StdOut.ReadAll
WScript.Sleep 100
Loop
objStdOut.WriteLine Cmd & output

objStdOut.WriteLine "This screen may be copied to clipboard for pasting into other Windows:"
objStdOut.WriteLine "Click System Menu icon, Edit -> Mark, select text, and Edit -> Copy."
objStdOut.WriteBlankLines 1
objStdOut.Write "Press [Enter] to close..."
objStdOut.Close
Wscript.StdIn.ReadLine

Sub UseCscript
pcengine = LCase(Mid(WScript.FullName, InstrRev(WScript.FullName,"\")+1))
If Not pcengine="cscript.exe" Then
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "CSCRIPT.EXE """ & WScript.ScriptFullName & """"
WScript.Quit
End If
End Sub

--
Best regards, FAQ for Wireless Internet: <http://Wireless.wikia.com>
John Navas FAQ for Wi-Fi: <http://wireless.wikia.com/wiki/Wi-Fi>
Wi-Fi How To: <http://wireless.wikia.com/wiki/Wi-Fi_How_To>
Fixes to Wi-Fi Problems: <http://wireless.wikia.com/wiki/Wi-Fi_Fixes>
 
Reply With Quote
 
 
 
 
John Navas
Guest
Posts: n/a

 
      07-12-2006, 09:08 PM
Substantially improved version. Save as FixDHCP.VBS
Feedback invited.

--------------------------------------------------------------------------------
' FIXDHCP.VBS V0.2, COPYRIGHT 2006 JOHN NAVAS
' FREE FOR PERSONAL NON-COMMERCIAL USE
' RELEASE AND RENEW ALL DHCP ADDRESSES, THEN RUN IPCONFIG /ALL

On Error Resume Next

' FORCE USE OF CSCRIPT INSTEAD OF WSCRIPT
UseCscript
Set objStdOut = WScript.StdOut

Dim WshShell, oExec
Set WshShell = CreateObject("WScript.Shell")

' DISPLAY OS AND VERSION
Set oExec = WshShell.Exec("%COMSPEC% /C VER")
output = ""
Do While Not oExec.StdOut.AtEndOfStream
output = output & oExec.StdOut.ReadAll
WScript.Sleep 100
Loop
objStdOut.WriteLine output

' PROCESS ALL IP ADAPTERS
Set objWMIService = GetObject("winmgmts:\\" & "." & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( "SELECT *" _
& " FROM Win32_NetworkAdapterConfiguration Where IPEnabled = True",,48)
For Each objItem in colItems
DoAdapter objItem
Next

Cmd = "IPCONFIG /ALL"
Set oExec = WshShell.Exec(Cmd)
output = ""
Do While Not oExec.StdOut.AtEndOfStream
output = output & oExec.StdOut.ReadAll
WScript.Sleep 100
Loop
objStdOut.WriteLine Cmd & output

objStdOut.WriteLine "This screen may be copied to clipboard for pasting into other Windows:"
objStdOut.WriteLine "Click System Menu icon, Edit -> Mark, select text, and Edit -> Copy."
objStdOut.WriteBlankLines 1
objStdOut.Write "Press [Enter] to close..."
objStdOut.Close
Wscript.StdIn.ReadLine

' IF WSCRIPT, SWITCH TO CSCRIPT
Sub UseCscript
pcengine = LCase(Mid(WScript.FullName, InstrRev(WScript.FullName,"\")+1))
If Not pcengine="cscript.exe" Then
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "CSCRIPT.EXE """ & WScript.ScriptFullName & """"
WScript.Quit
End If
End Sub

' PROCESS IP ADAPTER
Sub DoAdapter(objItem)
objStdOut.WriteLine objItem.Description
objStdOut.WriteLine "MACAddress: " & objItem.MACAddress

objStdOut.WriteLine "DHCPEnabled: " & objItem.DHCPEnabled
If objItem.DHCPEnabled Then

objStdOut.Write "Release IP Address..."
rtrn = objItem.ReleaseDHCPLease()
if rtrn = 0 Then
objStdOut.WriteLine "success."
Else
objStdOut.WriteLine "failure (" & rtrn & ")!"
End If

objStdOut.Write "Renew IP Address..."
rtrn = objItem.RenewDHCPLease()
if rtrn = 0 Then
objStdOut.WriteLine "success."
Else
objStdOut.WriteLine "failure (" & rtrn & ")!"
End If

objStdOut.WriteLine "DHCPServer: " & objItem.DHCPServer
objStdOut.WriteLine "DHCPLeaseExpires: " & objItem.DHCPLeaseExpires
objStdOut.WriteLine "DHCPLeaseObtained: " & objItem.DHCPLeaseObtained
End If

For Each strIPAddress in objItem.IPAddress
objStdOut.WriteLine "IP Address: " & strIPAddress
Next
objStdOut.WriteLine "IPConnectionMetric: " & objItem.IPConnectionMetric

objStdOut.WriteBlankLines 1
End Sub
--------------------------------------------------------------------------------

--
Best regards, FAQ for Wireless Internet: <http://Wireless.wikia.com>
John Navas FAQ for Wi-Fi: <http://wireless.wikia.com/wiki/Wi-Fi>
Wi-Fi How To: <http://wireless.wikia.com/wiki/Wi-Fi_How_To>
Fixes to Wi-Fi Problems: <http://wireless.wikia.com/wiki/Wi-Fi_Fixes>
 
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
DHCP requests for renew roshak31 Windows Networking 2 03-10-2008 08:31 AM
Renew IP from DHCP Hugo Linux Networking 5 08-28-2007 07:59 PM
DHCP Renew Failing Kevin Windows Networking 2 04-13-2006 09:18 PM
DHCP Renew after VLAN Change MC Windows Networking 6 01-05-2006 06:39 PM
dhcp won't release/renew triwest Windows Networking 2 12-20-2003 05:52 PM



1 2 3 4 5 6 7 8 9 10 11