Vbs 禁用启用网卡

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不适用。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 服务器网卡多网卡绑定及vlan支持

    broadcom网卡 windows 2003 windows 2008 Dotnet3.5 broadcom 管理软件BACS

    力哥聊运维与云计算
  • KVM虚拟化Windows 模版制作步骤

    因为虚拟机的内存根据需求,有不同的大小设置,因此需要设置模版的虚拟内存为系统自动管理。设置方法如下:

    力哥聊运维与云计算
  • KVM虚拟化网络优化技术总结

    KVM的网络优化方案,总的来说,就是让虚拟机访问物理网卡的层数更少,直至对物理网卡的单独占领,和物理机一样的使用物理网卡,达到和物理机一样的网络性能。

    力哥聊运维与云计算
  • Linux系统加了弹性网卡却不能从外部访问?教您快速排查!

    为了给云服务器增加一个外网IP,实现单主机多 IP 部署,或者在一个CVM上接入到多个私有网络中,我们可以通过绑定弹性网卡的方式实现。但是绑定弹性网卡后,要从外...

    Htroy
  • Windows 技术篇-网卡物理(MAC)地址查看方法

    MAC 地址指的就是网卡的物理地址。 我们的网卡分有线网卡和无限网卡,这两个网卡物理地址不一样,你用哪个卡连接的网络,就看对应的物理地址就好了。 查看方法:...

    小蓝枣
  • 【腾讯云的1001种玩法】在腾讯云上创建您的SQL Server 故障转移集群(2)

    在上一篇文章中我们介绍了如何在QCloud标准化的搭建一套域环境,并介绍了如何在生产过程中如何避免一些坑,今天,我们来介绍此次demo中真正需要注意的一些细节及...

    李斯达
  • 关于无线网络 (一)

    每张网卡都有自己全球唯一的地址(MAC地址,12字节),正常情况下网卡只接收发送给自己的数据包(数据包前12字节就是数据包的目标MAC地址),及广播地址(MAC...

    KurtNiu
  • 理解物理网卡、网卡接口、内核、IP等属性的关系

    人对应物理网卡,人的姓名对应网卡接口名称,人的档案信息(保存在公安机构)对应网卡接口的配置信息,公安机构对应内核。

    行云博客
  • 第一章 网络参数配置

    我们知道,一台计算机如果要上网,必定要连接网线或wifi,所以计算机内是有与网线、WiFi对应的连接设备的,这就是网卡。而且除了连接网线或WiFi外,网卡上还需...

    晓天
  • 为 Windows 10 新增物理网卡子接口

    本文首发于:https://blog.frytea.com/archives/525/

    宋天伦

扫码关注云+社区

领取腾讯云代金券