用命令禁用/启用网卡

Option Explicit
'首先引用Microsoft Shell Controls And Automation
Private Function ExcNetLinkMenu(ByVal AdapterName As String, ByVal MenuName As String) As Boolean
    On Error Resume Next
    Dim mShell As New Shell32.Shell
    Dim NetConnection As Shell32.Folder
    Dim FolderItem As Shell32.FolderItem
    Dim NetConnectionItem As ShellFolderItem
    Dim verb As Shell32.FolderItemVerb
    Set NetConnection = mShell.NameSpace(49) '这个49是我找出来的,有了它就可以避免遍历控制面板
    If ObjPtr(NetConnection) = 0 Then
        ExcNetLinkMenu = False
        GoTo exitfunction
    End If
    Dim flag As Boolean
    flag = False
    For Each FolderItem In NetConnection.Items
        If FolderItem.Name = AdapterName Then
            Set NetConnectionItem = FolderItem
            flag = True
            Exit For
        End If
    Next
    If flag = False Then
        ExcNetLinkMenu = False
        GoTo exitfunction
    End If
    For Each verb In NetConnectionItem.Verbs
        If verb.Name = MenuName Then
            flag = True
            verb.DoIt
            ExcNetLinkMenu = True
            GoTo exitfunction
        End If
    Next
    If flag = False Then
        ExcNetLinkMenu = False
        GoTo exitfunction
    End If
exitfunction:
    Set mShell = Nothing
    Set NetConnection = Nothing
    Set FolderItem = Nothing
    Set NetConnectionItem = Nothing
    Set verb = Nothing
End Function

Private Sub Command1_Click()
    Dim flag As Boolean
    '把 本地连接 2 换成你要控制的本地连接的名字
    flag = ExcNetLinkMenu("本地连接", "停用(&B)") '这个在2000下对应的是禁用,具体是什么,点右键,自己看吧
End Sub

Private Sub Command2_Click()
    '把 本地连接 2 换成你要控制的本地连接的名字
    Dim flag As Boolean
    flag = ExcNetLinkMenu("本地连接", "启用(&A)")
End Sub
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
xp下用netsh禁用启用网卡 在XP系统中不支持netsh interface set interface name命令扩展,所以此命令是无法正常运行的,提取2003下的ifmon.dll文件覆盖,就可以用了。 winxp下使用: netsh interface set interface "本地连接" "disabled" 会出现 如下错误提示: 代码: C:\>netsh interface set interface "本地连接" "disabled" 没有指定一个或多个关键性参数 此命令提供的语法不正确。请查看帮助以获取正确的语法信息。 用法 set interface [name = ] IfName [ [admin = ] ENABLED|DISABLED [connect = ] CONNECTED|DISCONNECTED [newname = ] NewName ] 设置接口参数。 IfName - 接口名称 admin - 接口是否被启用 (仅用于非 LAN)。 connect - 是否连接接口 (仅用于非 LAN)。 newname - 接口的新名称 (仅用于非 LAN)。 注意: - 除名称外,还必须至少指定一个选项。 - 如果 connect = CONNECTED 被指定,那么接口被自动 启用,甚至在 admin = DISABLED 选项被指定时也是如 此。 =========================== 替换XP下的ifmon.dll步骤: 但是你可以把win2003系统下 C:\\WINDOWS\\system32\\ifmon.dll文件 拷贝到winxp系统下来使用,从而实现网卡禁用启用拷贝时候需要注意:需要先把 ifmon.dll文件拷贝到 C:\\WINDOWS\\system32\\dllcache 替换掉系统文件再拷贝到 C:\\WINDOWS\\system32 替换掉系统文件,若系统会提示 文件被修改了,是否从安装盘还原,选择保持修改的文件就替换成功了。 替换后就可以正常使用netsh命令禁用启用网卡了 =========================== 根目录附件中上有win2003的ifmon.dll文件备份 DOS下重启网卡 @ rem 关闭网卡: netsh interface set interface name="本地连接" admin=DISABLED @ rem 开启网卡: netsh interface set interface name="本地连接" admin=ENABLED 使用PPPOE协议进行宽带拨号时,若要重新拨号,不要对使用PPPOE的“宽带连接”netsh,而应该对“本地连接”netsh WN7可直接用批处理 如果还不会下载我的附件吧0分。内含有XP用win2003的ifmon.dll文件备份及所用所有批处理文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值