萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> js獲取客戶端網卡的IP地址、MAC地址

js獲取客戶端網卡的IP地址、MAC地址

 這篇文章主要介紹了js獲取客戶端網卡的IP地址、MAC地址的方法,需要的朋友可以參考下

 代碼如下: <html>  <head>  <title></title>  </head>  <body>  <object classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" id="locator" style="display:none;visibility:hidden"></object>  <object classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223" id="foo" style="display:none;visibility:hidden"></object>  <form name="myForm">  <br/>MAC地址:<input type="text" name="macAddress">  <br/>IP地址:<input type="text" name="ipAddress">  <br/>主機名:<input type="text" name="hostName">  </form>  </body>  </html>  <script language="javascript">  var sMacAddr="";  var sIPAddr="";  var sDNSName="";  var service = locator.ConnectServer();  service.Security_.ImpersonationLevel=3;  service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');  </script>  <script FOR="foo" EVENT="OnObjectReady(objObject,objAsyncContext)" LANGUAGE="JScript">  if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true){  if(objObject.IPEnabled && objObject.IPAddress(0) !=null && objObject.IPAddress(0) != "undefined" && objObject.DNSServerSearchOrder!=null)  sIPAddr = objObject.IPAddress(0);  if(objObject.MACAddress != null &&objObject.MACAddress != "undefined")  sMacAddr = objObject.MACAddress;  if(objObject.DNSHostName != null &&objObject.DNSHostName != "undefined")  sDNSName = objObject.DNSHostName;  }  </script>    <script FOR="foo" EVENT="OnCompleted(hResult,pErrorObject, pAsyncContext)" LANGUAGE="JScript">  myForm.macAddress.value=sMacAddr;  myForm.ipAddress.value=sIPAddr;  myForm.hostName.value=sDNSName;  </script>    代碼是網上找到,但是經過修改。    原因是比如你筆記本有多張網卡,會出現獲取你未聯網或者禁用網卡的信息,解決辦法:加限制條件:    objObject.DNSServerSearchOrder!=null    加上這個限制條件後,就能取到聯網客戶端的網卡IP地址了。    不過還有個問題就是只能限制IE浏覽器,而且Activex必須要全部啟用。  
copyright © 萬盛學電腦網 all rights reserved