ActiveXObject获取本机mac、ip地址(IE)

由于在需求中,有通过mac地址获取机构的需求,所以特地找了两个方法,以供使用(仅限IE)

方法一

<HTML>

<HEAD>
    <TITLE>get MAC address</TITLE>
    <META http-equiv=Content-Type content="text/html; charset=gb2312">
</HEAD>

<BODY>
    <object id="locator" classid=CLSID:76A64158-CB41-11D1-8B02-00600806D9B6 viewastext></object>
    <object id="foo" classid=CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223></object>
    <script type="text/javascript">
    var service = locator.ConnectServer();
    var MACAddr;
    service.Security_.ImpersonationLevel = 3;
    service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');
    </script>
    <script type="text/javascript" event=OnObjectReady(objObject,objAsyncContext) for=foo>
    // 我自己在网上找了一个版本,在if条件中没有"objObject.DNSServerSearchOrder!=null"这个条件,获得值不对.  
    if (objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true) { // 获取MAC地址:需要条件"objObject.DNSServerSearchOrder!=null"  
        if (objObject.MACAddress != null && objObject.MACAddress != "undefined" && objObject.DNSServerSearchOrder != null)
            MACAddr = objObject.MACAddress;
    }
    document.getElementById('mac').innerHTML = unescape(MACAddr);
    </script>
    <div id="mac">
    </div>
</BODY>

</HTML>

方法二

<HTML>

<HEAD>
    <TITLE>mac</TITLE>
    <script type="text/javascript">
    function load() {
        var locator = new ActiveXObject("WbemScripting.SWbemLocator");
        var service = locator.ConnectServer(".");
        var properties = service.ExecQuery("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled =True");
        var e = new Enumerator(properties); {
            var p = e.item();
            var mac = p.MACAddress;
            document.getElementById("mac").value = mac;
        }
    }
    </script>
</HEAD>

<BODY onload="load()">
    <input type="text" id="mac" name="mac" />
</BODY>

</HTML>

注意:需要ie中的ActiveX安全设置,具体可百度,ie8下亲测可用

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值