Start Server App-V Services

Microsoft.ServerAppV.MP.Task.Recovery.StartServices (Recovery)

Recovery task that starts the Server App-V services.

Element properties:

TargetMicrosoft.ServerAppV.MP.SAVAgent
MonitorMicrosoft.ServerAppV.MP.Monitor.SAVServices
Reset MonitorTrue
RemotableTrue
Timeout300
CategoryAvailabilityHealth
Enabledtrue
AccessibilityPublic

Member Modules:

ID Module Type TypeId RunAs 
WA WriteAction Microsoft.Windows.ScriptWriteAction Default

Source Code:

<Recovery ID="Microsoft.ServerAppV.MP.Task.Recovery.StartServices" Accessibility="Public" Enabled="true" Target="Microsoft.ServerAppV.MP.SAVAgent" Monitor="Microsoft.ServerAppV.MP.Monitor.SAVServices" ResetMonitor="true" ExecuteOnState="Error" Remotable="true" Timeout="300">
<Category>AvailabilityHealth</Category>
<WriteAction ID="WA" TypeID="Windows!Microsoft.Windows.ScriptWriteAction">
<ScriptName>StartServices.vbs</ScriptName>
<Arguments/>
<ScriptBody><Script>StopService("savagent")
StartService("sftlist")
StartService("savagent")

Function StartService(serviceName)
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
&amp; "{impersonationLevel=impersonate}!\\" &amp; strComputer &amp; "\root\cimv2")
Set colServiceList = objWMIService.ExecQuery _
("Select * from Win32_Service where Name='" &amp; serviceName &amp; "'")
For each objService in colServiceList
objService.StartService()
Next
End Function

Function StopService(serviceName)
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
&amp; "{impersonationLevel=impersonate}!\\" &amp; strComputer &amp; "\root\cimv2")
Set colServiceList = objWMIService.ExecQuery _
("Select * from Win32_Service where Name='" &amp; serviceName &amp; "'")
For each objService in colServiceList
objService.StopService()
Next
End Function</Script></ScriptBody>
<TimeoutSeconds>600</TimeoutSeconds>
</WriteAction>
</Recovery>