Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

97 lines
2.4 KiB

'------------------------------------------------------------------------------------------------
'
' Usage: stopweb <--ADSPath|-a server1[,server2,server3...]>
' [--computer|-c COMPUTER1[,COMPUTER2...]]
' [--verbose|-v]
' [--help|-?]
'
' SERVERx Web Server # to be stopped
'
' Example 1: stopweb --a 3,1
'------------------------------------------------------------------------------------------------
' Force explicit declaration of all variables.
Option Explicit
On Error Resume Next
Dim oArgs, ArgNum, ArgServerList
Dim verbose
Dim ArgComputers
ArgComputers = Array("LocalHost")
verbose = false
Set oArgs = WScript.Arguments
ArgNum = 0
While ArgNum < oArgs.Count
Select Case LCase(oArgs(ArgNum))
Case "--adspath","-a":
ArgNum = ArgNum + 1
ArgServerList=Split(oArgs(ArgNum), ",", -1)
Case "--computer","-c":
ArgNum = ArgNum + 1
ArgComputers = Split(oArgs(ArgNum), ",", -1)
Case "--verbose", "-v":
verbose = true
Case "--help","-?":
Call DisplayUsage
Case Else:
Call DisplayUsage
End Select
ArgNum = ArgNum + 1
Wend
If Not IsArray(ArgServerList) Then
Call DisplayUsage
End If
Dim compIndex
for compIndex = 0 to UBound(ArgComputers)
Call ASTStopWebServers(ArgComputers(compIndex),ArgServerList)
next
Sub ASTStopWebServers(Computer, ServerList)
Dim ServerNum, oServer
On Error Resume Next
ServerNum = 0
Dim fullPath
While ServerNum <= UBound(ServerList)
fullPath = "IIS://"&Computer&"/W3svc/"&ArgServerList(ServerNum)
Trace "Stopping " & fullPath & "."
Set oServer = GetObject(fullPath)
If Err <> 0 Then
Display "Unable to open " & fullPath & "."
End If
oServer.Stop
If Err <> 0 Then
Display "Unable to stop web server " & fullPath & "."
End If
ServerNum = ServerNum + 1
Wend
End Sub
Sub Display(Msg)
WScript.Echo Now & ". Error Code: " & Hex(Err) & " - " & Msg
End Sub
Sub Trace(Msg)
if verbose = true then
WScript.Echo Now & " : " & Msg
end if
End Sub
Sub DisplayUsage
WScript.Echo "Usage: stopweb <--ADSPath|-a server1[,server2,server3...]>"
WScript.Echo " [--computer|-c COMPUTER1[,COMPUTER2...]]"
WScript.Echo " [--verbose|-v]"
WScript.Echo " [--help|-?]"
WScript.Echo "Note: server1, server2, etc. is the number of the server"
WScript.Echo "Example 1: stopweb -a 1,2,5"
WScript.Echo "Example 2: stopweb -c MACHINE1,MACHINE2,MACHINE3 -a 1,2,5"
WScript.Quit (1)
End Sub