<html>
<head>
<title>WMI Scripting HTML</title>
<script FOR="foo" EVENT="OnCompleted(hResult,pErrorObject, pAsyncContext)" LANGUAGE="JScript"> document.forms[0].txtMACAddr.value=unescape(MACAddr);
document.forms[0].txtIPAddr.value=unescape(IPAddr);
document.forms[0].txtDNSName.value=unescape(sDNSName);
//document.formbar.submit();
</script><script FOR="foo" EVENT="OnObjectReady(objObject,objAsyncContext)" LANGUAGE="JScript"> if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true)
{ if(objObject.MACAddress != null && objObject.MACAddress != "undefined")
MACAddr = objObject.MACAddress; if(objObject.IPEnabled && objObject.IPAddress(0) != null && objObject.IPAddress(0) != "undefined")
IPAddr = objObject.IPAddress(0); if(objObject.DNSHostName != null && objObject.DNSHostName != "undefined")
sDNSName = objObject.DNSHostName; }
</script>
</head>
<body>
<object classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" id="locator" VIEWASTEXT>
</object>
<object classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223" id="foo">
</object> <script LANGUAGE="JScript">
var service = locator.ConnectServer();
var MACAddr ;
var IPAddr ;
var DomainAddr;
var sDNSName;
service.Security_.ImpersonationLevel=3;
service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');
</script>
<form method="POST" action="NICPost.asp" id="formfoo" name="formbar"> <input type=text name="txtMACAddr">
<input type=text name="txtIPAddr">
<input type=text name="txtDNSName"> </form>
</body>
</html>已经有一个程序可以做到了,但是我不太理解是怎么做到的,请问能有人好心解释一下吗?
<head>
<title>WMI Scripting HTML</title>
<script FOR="foo" EVENT="OnCompleted(hResult,pErrorObject, pAsyncContext)" LANGUAGE="JScript"> document.forms[0].txtMACAddr.value=unescape(MACAddr);
document.forms[0].txtIPAddr.value=unescape(IPAddr);
document.forms[0].txtDNSName.value=unescape(sDNSName);
//document.formbar.submit();
</script><script FOR="foo" EVENT="OnObjectReady(objObject,objAsyncContext)" LANGUAGE="JScript"> if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true)
{ if(objObject.MACAddress != null && objObject.MACAddress != "undefined")
MACAddr = objObject.MACAddress; if(objObject.IPEnabled && objObject.IPAddress(0) != null && objObject.IPAddress(0) != "undefined")
IPAddr = objObject.IPAddress(0); if(objObject.DNSHostName != null && objObject.DNSHostName != "undefined")
sDNSName = objObject.DNSHostName; }
</script>
</head>
<body>
<object classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" id="locator" VIEWASTEXT>
</object>
<object classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223" id="foo">
</object> <script LANGUAGE="JScript">
var service = locator.ConnectServer();
var MACAddr ;
var IPAddr ;
var DomainAddr;
var sDNSName;
service.Security_.ImpersonationLevel=3;
service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');
</script>
<form method="POST" action="NICPost.asp" id="formfoo" name="formbar"> <input type=text name="txtMACAddr">
<input type=text name="txtIPAddr">
<input type=text name="txtDNSName"> </form>
</body>
</html>已经有一个程序可以做到了,但是我不太理解是怎么做到的,请问能有人好心解释一下吗?
解决方案 »
- for和while循环
- 开发其于SAX方式的接口文件读取类,读取之后将结构存放在数据库中;
- 请教大虾:java实现Comparable接口问题?
- dateoutputstream和dateinputstream怎么用
- 关于写文件的一个问题
- effective java item5的pop可不可以这样?
- Tomcat5配置Mysql JDBC数据库连接池一文中的"web应用对应的.xml文件"是什么东西?
- 一个入门的问题.
- 麻烦大家!!!!
- 如何在JBuilder中设置Classpath?
- [求助] replaceAll疑问
- 测试ThreadLocal类在多线程下的运行怎么看不懂了,为什么新建一个线程initialValue()方法就被调用一次?不是仅仅只调用一次的吗?
</object>
<object classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223" id="foo">
</object>
上面两句诗用到了ActiveX控件,说实话也只有调用ActiveX控件才能做这么底层的事情.但是缺点是已经要用户允许才能运行.<script LANGUAGE="JScript">
var service = locator.ConnectServer();
var MACAddr ;
var IPAddr ;
var DomainAddr;
var sDNSName;
service.Security_.ImpersonationLevel=3;
service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');
</script>
这是调用的是id="locator"的控件的ConnectServer();
定义了mac地址,ip地址,域, DNS名称,安全级别五个变量.
service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration'); 调用serveice的InstancesOfAsync方法,不知道具体干什么,
但是这个Win32_NetworkAdapterConfiguration能把上面五个变量填好后传给id为foo的activeX控件.<script FOR="foo" EVENT="OnObjectReady(objObject,objAsyncContext)" LANGUAGE="JScript"> if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true)
{ if(objObject.MACAddress != null && objObject.MACAddress != "undefined")
MACAddr = objObject.MACAddress; if(objObject.IPEnabled && objObject.IPAddress(0) != null && objObject.IPAddress(0) != "undefined")
IPAddr = objObject.IPAddress(0); if(objObject.DNSHostName != null && objObject.DNSHostName != "undefined")
sDNSName = objObject.DNSHostName; }
</script>
这里了针对id是foo的控件的处理.EVENT="OnObjectReady.."就是在上面server已经把值传过去后,这里只得到MACAddr,IPAddr和DNS名称.<script FOR="foo" EVENT="OnCompleted(hResult,pErrorObject, pAsyncContext)" LANGUAGE="JScript"> document.forms[0].txtMACAddr.value=unescape(MACAddr);
document.forms[0].txtIPAddr.value=unescape(IPAddr);
document.forms[0].txtDNSName.value=unescape(sDNSName);
//document.formbar.submit();
</script>
最后才是执行这里,EVENT="OnCompleted.."就是等上面的工作都处理完后才执行这里,很简单,就是把给页面的元素赋值,把上面得到的MACAddr,IPAddr和DNS名称
显示出来.