真钱捕鱼棋牌游戏网 - 手机棋牌操作系统_手机棋牌 命令_手机棋牌教程_手机棋牌黑客

会员投稿 投稿指南 本期推荐: 强烈推荐:Ylmf OS 3.0 正式版发布附迅雷高 XP系统下硬盘安装Fedora 14图文教程
搜索:
您的位置: 真钱捕鱼棋牌游戏网 > 手机棋牌游戏换现金 > » 正文

Vbs 禁用启用网卡

来源: xiaoli110 分享至:

 Vbs 禁用启用网卡

 

在实际工作中,经常碰到需要通过脚本启用禁用网卡的情况,在网上找了一个脚本,实际是通过模拟键盘操作来启用禁用,但对于多种系统和比较复杂的情况操作性不好。

还有一种思路,就是利用netsh命令实现,但是netsh命令必须得到网卡的名字,不同服务器,网卡的名字并不一样。

于是产生了一个思路,利用vbs得到网卡名字,然后调用netsh命令启用禁用网卡。

代码如下

 

call dis_en_nic()

 

Function dis_en_nic()

 

On Error Resume Next

 

dim objShell

Const wbemFlagReturnImmediately = &h10

Const wbemFlagForwardOnly = &h20

 

set fso=createobject("scripting.filesystemobject") 

Dim wshshell

Set wshshell=WScript.CreateObject("WScript.Shell")

 

arrComputers=Array(".")

For Each strComputer In arrComputers

 

   Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")

   'Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapter where AdapterTypeId=0")

   '使用where AdapterTypeId=0 可以的得到所有的物理网卡,但是貌似禁用的卡不能得到,需要一步测试

   Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapter ")

   For Each objItem In colItems

            'WScript.Echo "NetConnectionID: " & objItem.NetConnectionID

            a=objItem.NetConnectionID

            '启用网卡

            b="""c:\WINDOWS\system32\cmd.exe /c c:\WINDOWS\system32\netsh.exe interface set interface name="""+a+""" admin=ENABLED """

            '禁用网卡

            'b="""c:\WINDOWS\system32\cmd.exe /c c:\WINDOWS\system32\netsh.exe interface set interface name="""+a+""" admin=DISABLED """

            wshshell.run("%comspec% /c "+b)

    Next

Next

Set wshshell=nothing

End Function

 

 

说明:

1 环境变量 %comspec% 代表 Windows 命令外壳;这等效于调用 Cmd.exe(它当然会打开一个命令窗口)。那为什么不直接调用 Cmd.exe?是这样,假设您的计算机运行 Windows 98。在这些计算机上,通过运行 Command.com 来调用命令外壳,因为没有 Cmd.exe。使用 %comspec% 有助于确保无论该脚本是在什么版本的 Windows 上运行,都可以获得命令窗口。

2 此方法只适用server 2003 2008 xp不适用。


Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史