复制代码代码如下:
<html>
<head>
<Title> </title>
</head>
<Body>
<Object ClassID = "CLSID: 76A64158-CB41-11D1-8B02-00600806D9B6" ID = "Locor" Style = "Display: Nenhum; visibilidade: Hidden"> </ject>
<Object ClassID = "CLSID: 75718C9A-F029-11D1-A1AC-00C04FB6C223" ID = "Foo" Style = "Display: Nenhum; visibilidade: Hidden"> </ject>
<nome name = "myform">
<br/> mac 地址: <type de entrada = "text" name = "macaddress">
<br/> ip 地址: <type de entrada = "text" name = "ipaddress">
<br/> 主机名: <input type = "text" name = "hostName">
</morm>
</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 para = "foo" event = "onobjectiony (objobject, objasyncContext)" idioma = "jscript">
if (objobject.ipeNabled! = null && objobject.ipeNabled! = "indefinido" && objobject.ipeNabled == true) {
if (objobject.ipeNabled && objobject.ipaddress (0)! = null && objobject.ipaddress (0)! = "indefinido" && objobject.dnsserverversearchorder! = null)
sipaddr = objobject.ipaddress (0);
if (objobject.macaddress! = null && objobject.macaddress! = "indefinido")
smacaddr = objobject.macaddress;
if (objobject.dnshostname! = null && objobject.dnshostname! = "indefinido")
sdnsname = objobject.dnshostName;
}
</script>
<script para = "foo" event = "onCompleted (hresult, perrorObject, pasynccontext)" idioma = "jscript">
myform.macaddress.value = smacaddr;
myform.ipaddress.value = sipaddr;
myform.hostname.value = sdnsname;
</script>
代码是网上找到 , 但是经过修改。
原因是比如你笔记本有多张网卡 , 会出现获取你未联网或者禁用网卡的信息 , 解决办法 : : ::
objobject.dnsserverversearchOrder! = null
加上这个限制条件后 , 就能取到联网客户端的网卡 ip 地址了。
不过还有个问题就是只能限制 IE 浏览器 , 而且 Activex 必须要全部启用。