收藏本页 | 网站地图 | 投稿指南
 
 
当前位置:首页 >> 学院首页 >> 程序开发 >> ASP >>

ASP获取机器的网络属性配置

放大字体  缩小字体  At: 2005-10-04 02:08  By: master8 转载 来源: 互联网
其实就是读注册表,不过如果能获得机器的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("HKLMSOFTWAREMicrosoftWindows NT
CurrentVersionNetworkCards1ServiceName") 

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

sTcpipRegKey = "HKLMSYSTEMCurrentControlSetServices" 
& sNic & "ParametersTcpip" 

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里读注册表非常的简单,具体请看上面的程序。
 






         









 
Google
论坛精华  
 
 
  ©2005-2008 站长吧 Master8.NET All Rights Reserved 陕ICP备05010609号