关于WEB程序硬件绑定的实现

          为了系统的安全,只能在特定的电脑上登录。下面是部分的activex相关片段,业务方法可以自己去实现。可以实现多网卡的硬件绑定~

    <script>
        var _MACAddr = null;
     </script>
    <SCRIPT language=JScript event=OnObjectReady(objObject,objAsyncContext) for=foo>
        if (objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true) {
            if (objObject.MACAddress != null && objObject.MACAddress != "undefined")
                _MACAddr = objObject.MACAddress;
        }
    </SCRIPT>

 

 

        //读取客户端计算机硬件信息
        function getSystemInfo() {
            try {
                var locator = new ActiveXObject("WbemScripting.SWbemLocator");
                var service = locator.ConnectServer(".");
                var cpu = new Enumerator(service.ExecQuery("SELECT * FROM Win32_Processor")).item();
            } catch(exception) {
                return null;
            }
            if (!_MACAddr || _MACAddr == 'null' || _MACAddr == null)
                return null;
            else
                return _MACAddr;
        }

 

 

<OBJECT width="0" height="0" border="0" id=locator classid=CLSID:76A64158-CB41-11D1-8B02-00600806D9B6
        VIEWASTEXT></OBJECT>
<OBJECT width="0" height="0" border="0" id=foo classid=CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223></OBJECT>

 

通过activex控件获取可用网卡,及其网卡的网络连接状态
<SCRIPT language="JScript">
    try {
        var service = document.getElementById('locator').ConnectServer();
        service.Security_.ImpersonationLevel = 3;
        var a = service.ExecQuery("SELECT * FROM Win32_NetworkAdapter where MACAddress is not null");

        var e = new Enumerator(a);
        for (; !e.atEnd(); e.moveNext()) {
            var p = e.item();
            var e2 = new Enumerator(service.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration"
                    + " where MACAddress='" + p.MACAddress + "' and IPEnabled=true"));
            if (!e2.atEnd()) {
                    _MACAddrs[_MACAddrs.length] = {mac:p.MACAddress,  status:p.NetConnectionStatus};
            }
        }
            for (var i = 0; i < _MACAddrs.length; i++) {
                //2表示 网卡连接正常, 7标识未连接
               alert(_MACAddrs+"   "+(_MACAddrs=='2'?' 网卡连接正常':'网卡未连接'));
                            }
    } catch(error) {

    }
</SCRIPT>

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值