[转载]js 获取多个mac地址(支持火狐与google) - 一天进步一点 - ITeye技术网站

[转载]js 获取多个mac地址(支持火狐与google) – 一天进步一点 – ITeye技术网站.

BS项目中要实现mac地址验证,只能在js获取mac地址,而网络上很多写法都是调用微软ActiveX,而此有几个缺点:

 

1: IE核心浏览器会弹出提示,很多客户会误以为是病毒,而点击否

2: 不支持非IE浏览器

3: 无法跨平台

所以只能采用别的处理办法,那能不能从别的地方下手呢?

 

答案是肯定的,一下是我的想法,大家可以在我的基础上进行拓展。

 

1:  js读取xml

2:  通过批处理获取mac地址并生成XML

 

以下是代码:

 

html 通过js获取xml文件

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<BODY>
</BODY>
</HTML>
<SCRIPT>
var progId, progIds = ["MSXML2.XMLHTTP.6.0" , "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];

function getXMLHttpRequest()
  {
   if (!window.ActiveXObject) {
    return new XMLHttpRequest();
   } else if (progId != null) {
    return new ActiveXObject(progId);
   } else {
    for (var i = 0; i < progIds.length; i++)
    {
     try {
      return new ActiveXObject(progId = progIds[i]);
     } catch (ex) {
      progId = null;
     }
    }
   }
  }
  function loadClass(src)
    {
     try
     {
      var xmlHttp = getXMLHttpRequest();
      xmlHttp.open("GET", src, false);
      xmlHttp.send(null);
      var stus = xmlHttp.status;
      if (stus == 200 || stus == 0 || stus == 304)
      {
       return xmlHttp.responseText;
      }
     }catch(ex){
        alert("error!");
     }
    }
var e =  loadClass("c:\\WINDOWS\\system32\\22.xml");

alert(e);

</SCRIPT>

通过bat 生成dos

@ECHO OFF
color 01a

@ECHO  系统启动中,请不要中断
C:
if not exist "c:\WINDOWS\system32\22.XML" (

for /f "delims=: tokens=1*" %%a in ('ipconfig/all^|find "Physical"')do echo %%b>>c:\WINDOWS\system32\22.xml

)
ping /n 2 127.1 >nul
rem 地址修改成需要的地址
 start http://localhost/
@ECHO 恭喜你 启动成功
pause
赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏