Solved

Ping a server and restart services on a different server

Posted on 2008-10-07
3
316 Views
Last Modified: 2010-04-24
I am trying to ping a server at a specified time period lets say from 10-11 am. If the ping is successful, I want to restart services on the current machine. If not successful to continue to ping. Here is what I have so far.  Can anyone tell me if I am on the right track or what else I need to complete.  

Dim strComputer

StrComputer = "."
Set objWMIService = GetObject(_
    "winmgmts:\\" & strComputer & "\root\cimv2")
strServiceName = "WZCSVC"
Set colPings = objWMIService.ExecQuery _
    ("Select * From Win32_PingStatus where Address = '255.255.255.0'")

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colItems = objWMIService.ExecQuery("Select * from Win32_Service Where Name = '" & strServiceName & "'")


Do While i = 0
For Each objStatus in colPings
    If IsNull(objStatus.StatusCode) _
        or objStatus.StatusCode<>0 Then

    Else
        objItem.StartService(strServiceName)

    End If
Next
Wscript.Sleep (6000)
loop
0
Comment
Question by:earngreen
  • 2
3 Comments
 
LVL 67

Accepted Solution

by:
sirbounty earned 500 total points
ID: 22666145
You're declaring the wmi reference twice...try this:
strServiceName = "WZCSVC"
IP = "255.255.255.0"
 
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
 
Do While PingResult = False
  wscript.sleep 6000  
Loop
 
Set colItems = objWMIService.ExecQuery("Select * from Win32_Service Where Name = '" & strServiceName & "'")
 
For Each objService in colItems
  objService.StartService()
Next
 
Set objWMIService = Nothing
 
Function PingResult()
  On Error Resume Next
  Set colPings = objWMIService.ExecQuery ("Select * From Win32_PingStatus where Address = '" & IP & "'")
  For Each objStatus in colPings
    If IsNull(objStatus.StatusCode) or objStatus.StatusCode <> 0 Then 
      PingResult=False
    Else
      PingResult=True
    End If
  Next
End Function

Open in new window

0
 

Author Closing Comment

by:earngreen
ID: 31503880
This works great. Thanks
0
 
LVL 67

Expert Comment

by:sirbounty
ID: 22668485
Happy to help - thanx for the grade! :^)
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This is an addendum to the following article: Acitve Directory based Outlook Signature (http://www.experts-exchange.com/Programming/Languages/Visual_Basic/VB_Script/Q_24950055.html) The script is fine, and works in normal client-server domains…
Deploying a Microsoft Access application in a Citrix environment is not difficult but takes a few steps. However, Citrix system people are often of little help, as they typically know next to nothing about Access. The script provided here will take …
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question