页面导航: 首页脚本专栏vbs → 正文内容 本地连接禁用/启用批处理脚本

本地连接禁用/启用批处理脚本

发布:dxy 字体:[增加 减小] 类型:转载


Const ssfCONTROLS = 3 
sConnectionName = "本地连接"  '可改成需要控制的连接名称,如"无线网络连接"等 
sEnableVerb = "启用(&A)" 
sDisableVerb = "禁用(&B)"   'XP系统中应为 "停用(&B)" 
set shellApp = createobject("shell.application") 
set oControlPanel = shellApp.Namespace(ssfCONTROLS) 
set oNetConnections = nothing 
for each folderitem in oControlPanel.items 
 if folderitem.name  = "网络连接" then 
   set oNetConnections = folderitem.getfolder: exit for 
 end if 
next 
if oNetConnections is nothing then 
 msgbox "未找到网络连接文件夹" 
 wscript.quit 
end if 
set oLanConnection = nothing 
for each folderitem in oNetConnections.items 
 if lcase(folderitem.name)  = lcase(sConnectionName) then 
   set oLanConnection = folderitem: exit for 
 end if 
next 
if oLanConnection is nothing then 
 msgbox "未找到 '" & sConnectionName & "' item" 
 wscript.quit 
end if 
bEnabled = true 
set oEnableVerb = nothing 
set oDisableVerb = nothing 
s = "Verbs: " & vbcrlf 
for each verb in oLanConnection.verbs 
 s = s & vbcrlf & verb.name 
 if verb.name = sEnableVerb then  
   set oEnableVerb = verb   
   bEnabled = false 
 end if 
 if verb.name = sDisableVerb then  
   set oDisableVerb = verb   
 end if 
next 
'debugging displays left just in case... 

'msgbox s ': wscript.quit 
'msgbox "Enabled: " & bEnabled ': wscript.quit 
'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 
'  oLanConnection.invokeverb sDisableVerb 
 oDisableVerb.DoIt 
else 
'  oLanConnection.invokeverb sEnableVerb 
 oEnableVerb.DoIt 
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... 

wscript.sleep 400 

浏览次数:载入中... 打印本文关闭本文返回首页
·在百度中搜索关于“本地连接禁用/启用批处理脚本”相关内容
·在谷歌中搜索关于“本地连接禁用/启用批处理脚本”相关内容

文章评论

共有 位脚本之家网友发表了评论我来说两句

同 类 文 章
最 近 更 新
热 点 排 行