5i5wei 发表于 2010-12-7 14:23:41

区分 有线网卡和无线网卡的 mac 地址[已解决]

本帖最后由 5i5wei 于 2011-1-18 14:30 编辑

我的问题是   有线网卡 无线网卡 的mac    地址怎么区分。


         例如 : 一台笔记本 有线和无线同时用的时候。2个ip
            我的目的是 判断他的      那个ip 是有线 那个是无线并且区分那个是 有线网卡 和无线网卡 及其获取 相应的mac地址

nbmpe 发表于 2010-12-7 20:30:03

WMI中有一项: NETconnectionID:本地连接
如果是无线则是:NETconnectionID:无线连接
可利用这个写个判断。
另IPCONFIG /ALL也有这几个字,可以用FIND搜。如果搜到则提取。没搜到不提取。

nbmpe 发表于 2010-12-7 20:30:16

WMI中有一项: NETconnectionID:本地连接
如果是无线则是:NETconnectionID:无线连接
可利用这个写个判断。
另IPCONFIG /ALL也有这几个字,可以用FIND搜。如果搜到则提取。没搜到不提取。

5i5wei 发表于 2010-12-8 15:46:56

回复 2# nbmpe


    好像不行啊。能给出代码吗

nbmpe 发表于 2010-12-8 21:55:14

这个我只是思想,没写过,明天晚上给你结果!

nbmpe 发表于 2010-12-9 21:49:18

你别人有没有更好的方法;
楼下的加油.__wmi_Win32_NetworkAdapter()
Func __wmi_Win32_NetworkAdapter()
        Local $wbemFlagReturnImmediately = 0x10
        Local $wbemFlagForwardOnly = 0x20
        Local $colItems = ""
        Local $strComputer = "localhost"

        Local $objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
        $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapter", "WQL", _
                                          $wbemFlagReturnImmediately + $wbemFlagForwardOnly)

        If IsObj($colItems) then
           For $objItem In $colItems
                                ;第一种方法
                        ;If $objItem.netconnectionID = "本地连接" Then MsgBox(0,0, "板载网卡的MAC是:" & $objItem.MACAddress )
                       
                       
                        ;第二种方法            关键词可以在设备管理器中查看.
                        IfStringInStr ($objItem.Name, "realtek") Then MsgBox(0,0, "板载网卡的MAC是:" & $objItem.MACAddress )
           Next
        Else
           Msgbox(0,"WMI 输出","没有在类 " & "Win32_NetworkAdapter" & "中找到WMI对象" )
        Endif
EndFunc

ljf840212 发表于 2011-8-1 00:14:52

学习了~{:face (288):}

zdpcc 发表于 2012-2-29 19:08:17

本帖最后由 zdpcc 于 2012-2-29 19:12 编辑

学习了,多谢 nbmpe 提供

dsh850912083 发表于 2016-6-23 23:34:11

大事发生大幅撒旦法

dsh850912083 发表于 2016-6-23 23:47:53

大神告诉大夫给
页: [1]
查看完整版本: 区分 有线网卡和无线网卡的 mac 地址[已解决]