网站首页 | 站长论坛 | 免费空间申请 | 站长下载 | 站长博客 | 商业主机 | 免费空间推荐站点 | 免费空间排行榜 | 我们知道
发新话题
打印

[02-01] ASP获取机器的网络属性配置

[02-01] ASP获取机器的网络属性配置

其实就是读注册表,不过如果能获得机器的IP配置等信息,以后配置IIS时就简单了。
下面的脚本读出机器的所有可用IP地址,子网掩码,却省网关等信息:  

Option Explicit  
Dim WSHShell  
Dim sNic, sMan  
Dim Gateway  
Dim IPAddress  
Dim SubnetMask  
Dim i  

Dim sTcpipRegKey  
Dim bIsDHCP  

Set WSHShell = CreateObject("WScript.Shell")  

sNic = WSHShell.RegRead("HKLM\SOFTWARE\Microsoft\Windows NT\
CurrentVersion\NetworkCards\1\ServiceName")  

If sTcpipRegKey <> "Microsoft" And Err.Number = 0 Then  

sTcpipRegKey = "HKLM\SYSTEM\CurrentControlSet\Services\"  
& sNic & "\Parameters\Tcpip\"  

bIsDHCP = WSHShell.RegRead(sTcpipRegKey & "EnableDHCP")  
If bIsDHCP Then  
Gateway = WSHShell.RegRead(sTcpipRegKey & "DhcpDefaultGateway")  
IPAddress = WSHShell.RegRead(sTcpipRegKey & "DhcpIPAddress")  
SubnetMask = WSHShell.RegRead(sTcpipRegKey & "DhcpSubnetMask")  
MsgBox ("DefaultGateway: " & Gateway(0) & Chr(10) & Chr(13)  
& "IPAddress: " & IPAddress & Chr(10) & Chr(13) & "SubnetMask: " & SubnetMask)  
Else  
Gateway = WSHShell.RegRead(sTcpipRegKey & "DefaultGateway")  
IPAddress = WSHShell.RegRead(sTcpipRegKey & "IPAddress")  
SubnetMask = WSHShell.RegRead(sTcpipRegKey & "SubnetMask")  
For i=0 to Ubound(IPAddress)-1  
MsgBox ("DefaultGateway: " & Gateway(0) & Chr(10) & Chr(13)  
& "IPAddress: " & IPAddress(i) & Chr(10) & Chr(13) & "SubnetMask: "  
& SubnetMask(i))  
Next  
End If  
End If  

说明:机器的网络配置保存在注册表里,网卡项目下面,所以首先必须知道网卡的名字。然后取注册表数据,IP地址和子网掩码都是数组形式(其实注册表里保存的是二进制数据,VBSCRIPT帮我们转换了)。在WSH里读注册表非常的简单,具体请看上面的程序。
权力打造广东省第一个中学生联盟论坛 晴天论坛:http://bbs.pcst.cn/

TOP

发新话题