找回密码
 加入
搜索
查看: 2336|回复: 3

如何获得真实的物理网卡信息??

  [复制链接]
发表于 2008-9-24 01:28:13 | 显示全部楼层 |阅读模式
以前用WMI的,类似        
$objWMIService = ObjGet("winmgmts:\\.\root\CIMV2")
$colItems = $objWMIService.ExecQuery ("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled =TRUE", "WQL", 0x10 + 0x20)
1 WMI这方法会把VPN的虚拟网卡也查出来了,不知还有其他WMI查询条件没,把非物理网卡剔出去??

2 网上还有个方法是注册表法,倒是可以单独把物理网卡读出来,但如何进行修改注册表的IP地址后让其不重启生效呢,WMI是可以的。。

谢谢
发表于 2008-9-24 01:44:38 | 显示全部楼层

#include <Array.au3>
$array = _GetMACAddress()
_ArrayDisplay($array)
                                         
Func _GetMACAddress()
        
Local $wbemFlagReturnImmediately = 0x10
Local $wbemFlagForwardOnly = 0x20
Local $strComputer = "localhost"
Local $objWMIService,$colItems,$ret[2]

$objWMIService  = ObjGet("winmgmts:\\" & $strComputer& "\root\cimv2")
$colItems = $objWMIService.ExecQuery("Select * From Win32_NetworkAdapter ")

For $colItem In $colItems
    If $colItem .NetConnectionStatus = 2 Then
    $ret[0]= $colItem .MACAddress
    $ret[1]=$colItem .Name
    EndIf
Next
Return $ret

EndFunc

 楼主| 发表于 2008-9-24 13:29:49 | 显示全部楼层
谢三恨
不过可能我描述不清楚,我其实想要物理网卡的具体信息,包括IP地址等等,而非物理地址;Win32_NetworkAdapter这家伙好象没有IP信息
发表于 2008-9-24 13:49:56 | 显示全部楼层
学会思考,学会举一反三。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-29 04:17 , Processed in 0.081362 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表