SoFunction
Updated on 2025-03-03

Local connection disable/enable batch script


Const ssfCONTROLS = 3 

sConnectionName = "Local Connection"  ' can be changed to the connection name that needs to be controlled, such as "Wireless Network Connection", etc.

sEnableVerb = "Enable(&A)"
sDisableVerb = "Disable(&B)"   'The XP system should be "Disable(&B)"

set shellApp = createobject("") 
set oControlPanel = (ssfCONTROLS) 

set oNetConnections = nothing 
for each folderitem in  
if  = "Network Connection" then
   set oNetConnections = : exit for 
 end if 
next 

if oNetConnections is nothing then 
msgbox "Non-network connection folder found"
  
end if 

set oLanConnection = nothing 
for each folderitem in  
 if lcase()  = lcase(sConnectionName) then 
   set oLanConnection = folderitem: exit for 
 end if 
next 

if oLanConnection is nothing then 
msgbox "Not found"" & sConnectionName & "' item"
  
end if 

bEnabled = true 
set oEnableVerb = nothing 
set oDisableVerb = nothing 
s = "Verbs: " & vbcrlf 
for each verb in  
 s = s & vbcrlf &  
 if  = sEnableVerb then  
   set oEnableVerb = verb   
   bEnabled = false 
 end if 
 if  = sDisableVerb then  
   set oDisableVerb = verb   
 end if 
next 

'debugging displays left just in case... 

'msgbox s ':  
'msgbox "Enabled: " & bEnabled ':  

'not sure why, but invokeverb always seemed to work  
'for enable but not disable.   

'saving a reference to the appropriate verb object  
'and calling the DoIt method always seems to work. 

if bEnabled then 
'   sDisableVerb 
  
else 
'   sEnableVerb 
  
end if 

'adjust the sleep duration below as needed... 

'if you let the oLanConnection go out of scope 
'and be destroyed too soon, the action of the verb 
'may not take... 

 400