日期:2014-05-17  浏览次数:20875 次

高手现身吧:wmi(vbscript)如何获取iis6下网站的asp.net版本

现在我们的需求是 用wmi获取iis6(windows2003)下网站的asp.net版本,iis7的都能获取到,但是iis6的查了好多资料也找不到,现在我们的模式是在服务器上的scom中执行vbscript 脚本,把结果返回来,
 
 
 
求高手赐教!!

问题解决追加100分

------解决方案--------------------
据我目前的了解,好像还没有办法最直接得到网站的.NET版本.
间接的办法是通过脚本映射的所在路径判断.NET版本,基本上不会有什么问题.

VBS代码如下,可根据实际的情况来修改下.

另外刚好我对IIS7不熟,基本上没用过.可以告诉我用脚本或者程序获取IIS7上网站的.NET版本的方法吗.


serverComment = "这里填写站点名"

Set objIIsService = GetObject("winmgmts:\\.\root\microsoftiisv2")

Set colWebsites = objIIsService.ExecQuery("SELECT * FROM IIsWebServerSetting WHERE ServerComment='"&serverComment&"'")
If colWebsites.Count < 1 Then
MsgBox "没有这个网站"
Wscript.Quit
Else
For Each objWebsite In colWebsites
name = objWebsite.Name
Next
End If


Set objIIsWebVirtualDirSetting = GetObject("winmgmts:\\.\root\microsoftiisv2:IIsWebVirtualDirSetting.Name='"&name&"/root'")
For Each scriptMap In objIIsWebVirtualDirSetting.ScriptMaps
If scriptMap.Extensions = ".aspx" Then
path = scriptMap.ScriptProcessor
If InStr(path,"v1.1")>0 Then MsgBox "ASP.NET版本为1.1"
If InStr(path,"v2.0")>0 Then MsgBox "ASP.NET版本为2.0"
If InStr(path,"v4.0")>0 Then MsgBox "ASP.NET版本为4.0"
End If
Next