wtm
asked on
VBScript runtime error: Object required
On line 75 Char 2, I receive an error on the code below Microsoft VBScript runtime error: Object required. It's referring either to "objDisable.DoIt" or "objEnable.DoIt" . Can some one help me ? I know I must be missing something easy but I just can't find it.
Thanks
The code is attempting to toggle my wireless NIC on or off without having to use Device Manager.
Code Below
<package>
<comment>
NICToggle.wsf This script looks at your ‘Local Area Connection’
and enables it if disabled, disables it if enabled.
</comment>
<job>
<runtime>
<description>
Script for toggling network connection on/off
</description>
<example> C:\>cscript ToggleNIC.wsf
</example>
</runtime>
<object id = "objShell" progid = "Shell.Application"/>
set objShell=CreateObject("she ll.applica tion")
<script language = "VBScript">
'Toggle NIC on or off
Option Explicit
Dim objCP, objEnable, objDisable, colNetwork
Dim clsConn, clsLANConn, clsVerb
Dim strNetConn, strConn, strEnable, strDisable
Dim bEnabled, bDisabled
Const NETWORK_CONNECTIONS = &H31&
strConn = "Local Area Connection"
'strEnable = "En&able" strEnable = "&Aktivieren"
'strDisable = "Disa&ble" strDisable = "&Deaktivieren"
Set colNetwork = Nothing
Set colNetwork = objShell.Namespace(NETWORK _CONNECTIO NS)
' Network Connections (independent of country/language)
If colNetwork is Nothing Then
WScript.Echo "Network folder not found"
WScript.Quit
End If
Set clsLANConn = Nothing
For Each clsConn in colNetwork.Items
' In case the LAN is named “connection 2”, etc.
If Instr(LCase(clsConn.name), LCase(strC onn)) Then
Set clsLANConn = clsConn
Exit For
End If
Next
'WScript.Echo clsLANConn
If clsLANConn is Nothing Then
WScript.Echo "Network Connection not found"
WScript.Quit
End If
bEnabled = True
Set objEnable = Nothing
Set objDisable = Nothing
For Each clsVerb in clsLANConn.verbs
'WScript.Echo clsVerb.name
If clsVerb.name = strEnable Then
Set objEnable = clsVerb
bEnabled = False
End If
If clsVerb.name = strDisable Then
Set objDisable = clsVerb
bEnabled = True
End If
Next
If bEnabled Then
objDisable.DoIt
WScript.Echo clsLANConn & " Disabled"
Else
objEnable.DoIt
WScript.Echo clsLANConn & " Activated"
End If
'Give the connection time to stop/start
WScript.Sleep 1000
</script>
</job>
</package>
Thanks
The code is attempting to toggle my wireless NIC on or off without having to use Device Manager.
Code Below
<package>
<comment>
NICToggle.wsf This script looks at your ‘Local Area Connection’
and enables it if disabled, disables it if enabled.
</comment>
<job>
<runtime>
<description>
Script for toggling network connection on/off
</description>
<example> C:\>cscript ToggleNIC.wsf
</example>
</runtime>
<object id = "objShell" progid = "Shell.Application"/>
set objShell=CreateObject("she
<script language = "VBScript">
'Toggle NIC on or off
Option Explicit
Dim objCP, objEnable, objDisable, colNetwork
Dim clsConn, clsLANConn, clsVerb
Dim strNetConn, strConn, strEnable, strDisable
Dim bEnabled, bDisabled
Const NETWORK_CONNECTIONS = &H31&
strConn = "Local Area Connection"
'strEnable = "En&able" strEnable = "&Aktivieren"
'strDisable = "Disa&ble" strDisable = "&Deaktivieren"
Set colNetwork = Nothing
Set colNetwork = objShell.Namespace(NETWORK
' Network Connections (independent of country/language)
If colNetwork is Nothing Then
WScript.Echo "Network folder not found"
WScript.Quit
End If
Set clsLANConn = Nothing
For Each clsConn in colNetwork.Items
' In case the LAN is named “connection 2”, etc.
If Instr(LCase(clsConn.name),
Set clsLANConn = clsConn
Exit For
End If
Next
'WScript.Echo clsLANConn
If clsLANConn is Nothing Then
WScript.Echo "Network Connection not found"
WScript.Quit
End If
bEnabled = True
Set objEnable = Nothing
Set objDisable = Nothing
For Each clsVerb in clsLANConn.verbs
'WScript.Echo clsVerb.name
If clsVerb.name = strEnable Then
Set objEnable = clsVerb
bEnabled = False
End If
If clsVerb.name = strDisable Then
Set objDisable = clsVerb
bEnabled = True
End If
Next
If bEnabled Then
objDisable.DoIt
WScript.Echo clsLANConn & " Disabled"
Else
objEnable.DoIt
WScript.Echo clsLANConn & " Activated"
End If
'Give the connection time to stop/start
WScript.Sleep 1000
</script>
</job>
</package>
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.