中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [总结]获取本地MAC地址的N种方法
作者:
标题: [总结]获取本地MAC地址的N种方法 上一主题 | 下一主题
s11ss
银牌会员





积分 2098
发帖 566
注册 2007-9-11
状态 离线
『楼 主』:  [总结]获取本地MAC地址的N种方法

1.CMD
ipconfig/all|findstr/c:"Physical Address"

nbtstat/a %computername%|find "MAC Address"

getmac/fo list|find "物理地址"

wmic nicconfig where (IPEnabled='True') get MACAddress
----------------------------------------------------------------------------------------------

2.VBS
For Each x In GetObject("winmgmts:\\.\root\cimv2").execquery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled='True'",,48):wscript.Echo x.macaddress:Next
----------------------------------------------------------------------------------------------

3.JS
x=new Enumerator(new ActiveXObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\\cimv2").ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled='True'"));while (!x.atEnd()){WScript.Echo(x.item().MACAddress);x.moveNext();}
[ Last edited by s11ss on 2007-11-27 at 08:18 PM ]

2007-11-27 20:15
查看资料  发短消息 网志   编辑帖子  回复  引用回复
electronixtar
铂金会员





积分 7493
发帖 2672
注册 2005-9-2
状态 离线
『第 2 楼』:  

嘎嘎,貌似还可以通过读注册表




C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>"
2007-11-27 20:19
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 3 楼』:  

注册表中的MAC只有你替换了网卡自带的才会有吧?

2007-11-27 20:22
查看资料  发短消息 网志   编辑帖子  回复  引用回复
upsco
初级用户





积分 67
发帖 32
注册 2007-11-19
状态 离线
『第 4 楼』:  

好贴,水顶一下

2007-11-27 20:27
查看资料  发短消息 网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 5 楼』:  

wmi 语句好NB,在msdn上搜索wmi script 搜索出了好多东西

2007-11-27 21:24
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 6 楼』:  

网上抄了一段写法标准的 wmi 来获取 mac
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled='True'",,48)
For Each objItem in colItems
    Wscript.Echo objItem.MACAddress
Next


2007-11-27 21:39
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
s11ss
银牌会员





积分 2098
发帖 566
注册 2007-9-11
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by vkill at 2007-11-27 09:39 PM:
网上抄了一段写法标准的 wmi 来获取 mac


[code]
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & &q ...

我的那个vbs版本与它其实是一样的。果然是标准版,够规范........

2007-11-27 21:45
查看资料  发短消息 网志   编辑帖子  回复  引用回复
s11ss
银牌会员





积分 2098
发帖 566
注册 2007-9-11
状态 离线
『第 8 楼』:  



  Quote:
嘎嘎,貌似还可以通过读注册表



  Quote:
注册表中的MAC只有你替换了网卡自带的才会有吧?

我不知道究竟可不可以通过读注册表来获取MAC地址。但据我所知,即使可以,对于不同的机器,MAC在注册表中的位置也可能是不同的。

2007-11-27 22:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 9 楼』:  



  Quote:
我不知道究竟可不可以通过读注册表来获取MAC地址。但据我所知,即使可以,对于不同的机器,MAC在注册表中的位置也可能是不同的。

大家都试试这个命令,看和通过上面的方法得到MAC地址是不是一样的,如果是一样的就可以收录进去了。
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Genuine Advantage\"|findstr/c:" MAC"


2007-11-27 23:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
s11ss
银牌会员





积分 2098
发帖 566
注册 2007-9-11
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by lxmxn at 2007-11-27 11:08 PM:


大家都试试这个命令,看和通过上面的方法得到MAC地址是不是一样的,如果是一样的就可以收录进去了。

[code]reg query "HKEY_LOCAL_MACHINE\SOFTWARE\M ...

错误: 系统找不到指定的注册表项或值

2007-11-27 23:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by s11ss at 2007-11-27 23:18:


错误: 系统找不到指定的注册表项或值

晕死了,我复制我发的贴子里面的代码,运行正常呢。

2007-11-27 23:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 12 楼』:  

注册表不行
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\>reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Genuine Advantage\"|findstr/c:" MAC"

Error:  The system was unable to find the specified registry key or value


2007-11-28 07:10
查看资料  发短消息 网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 13 楼』:  

WGA?
lxmxn用正版xp,BS之,哈哈

2007-11-28 12:51
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 14 楼』:  

:(

2007-11-28 14:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 15 楼』:  



  Quote:
Originally posted by everest79 at 2007-11-28 12:51 PM:
WGA?
lxmxn用正版xp,BS之,哈哈

我用的是公司的正版XP,也不行。

2007-11-28 20:38
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: