我想获得应用程序池的状态。我从这里中获取了vbscript。
strArgAppPool = Wscript.Arguments.Unnamed.Item(0)
Const noError = False
' Establish the connection to the WMI provider
Set oWebAdmin = GetObject("winmgmts:root\WebAdministration")
' Search the AppPool passed as argument in the list of application pools
Set oAppPool = oWebAdmin.Get("ApplicationPool.Name='" & strArgAppPool & "'")
' Create nice messages for pool states
Select Case oAppPool.GetState
Case 0
StateDescription = "STARTING"
outputStatus = "WARNING! "
outputCode = 1
Case 1
StateDescription = "STARTED"
outputStatus = "OK! "
outputCode = 0
Case 2
StateDescription = "STOPPING"
outputStatus = "WARNING! "
outputCode = 1
Case 3
StateDescription = "STOPPED"
outputStatus = "CRITICAL!! "
outputCode = 2
Case 4
StateDescription = "UNKNOWN"
outputStatus = "UNKNOWN? "
outputCode = 3
Case Else
StateDescription = "UNDEFINED VALUE"
outputStatus = "UNKNOWN? "
outputCode = 3
End Select
' Output
Wscript.Echo outputStatus & oAppPool.Name & ": " & StateDescription
' Error handling
If noError = true Then
' Error message
Wscript.echo "UNKNOWN: Error during the WMI query for app pool " & strArgAppPool & " !"
' Exit & return code
WScript.Quit(3)
Else
' Clean exit
WScript.Quit(outputCode)
End If通过批处理文件,我试图将其运行为
status1.vbs "DefaultAppPool"但我最终得到了这个

有什么服务还没有开始吗?我已经尝试过直接运行vb脚本。我尝试过不引用引号和所有类似的东西来传递论点。我不写剧本,但这次得写。
错误对话框表示第5行,Set oWebAdmin = GetObject("winmgmts:root\WebAdministration")。在过去的5个小时里,我已经尽力了。我有一个现成的脚本,我无法运行它。不好意思,也不愿意在这段时间内提出这个问题。但最终却迷失了方向。谢谢你的帮助。
另外,我还有一个IIS 6的工作脚本,我在远程服务器上通过PsExec调用这个脚本。但这在IIS 7中行不通。如果有人想让我发出去,请告诉我。另外,我现在正在使用IIS7和server 2008 R2,并且将在远程服务器上使用PsExec运行此脚本。
发布于 2013-09-17 09:42:46
您没有安装角色服务IIS管理脚本和工具。启动服务器管理器,转到角色→Web (IIS),并安装缺少的服务。
https://stackoverflow.com/questions/18831326
复制相似问题