Boston2012

Ping Test

10 posts in this topic

Below is copy of script I'm using, the .csv file that shows results is showing "False" and should be showing "True". Any ideas why this is happening? I am able to manually ping 172.24.72.155 and getting replies.


'Option Explicit
On Error Resume Next

Dim strNewContents, strLine, objFile,SuccessFile,strSuccessFlag,SuccessCode,strCritcalFlag,CriticalFile
Dim objShell,strOS
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objNetwork = CreateObject("WScript.Network")
Set objShell = CreateObject("WScript.Shell")

' Constants
Const ForReading = 1
Const ForWriting = 2
Const ForAppending = 8

strThisComputer = objNetwork.ComputerName
strFileOutput = "C:\TJXLogs\" & KMSPing & "KMSPing.csv"
strSuccessFlag = "C:\TJXLogs\Success.flag"
strOS = objShell.ExpandEnvironmentStrings("Win32_OperatingSystem")

'Determine Operating System

for each objOS in GetObject("winmgmts:").InstancesOf ("Win32_OperatingSystem")
strOS=objOS.Caption
next

If LCase(strOS) = RTrim(LCase("Microsoft Windows 2000 Server")) Then
strOS = "Windows 2000"
ElseIf LCase(strOS) = Rtrim(LCase("Microsoft Windows Server 2008 Standard")) Then
strOS = "Windows 2008"
Else
strOS = "Windows 2008"
End If


If objFSO.FileExists(strFileOutput) Then
Set objOutputFile = objFSO.OpenTextFile (strFileOutput, ForWriting)
Else
Set objOutputFile = objFSO.CreateTextFile(strFileOutput, True)
End If

If Err <> 0 Then
Wscript.Echo "Unable to open " & strFileOutput & " for output."
WScript.Quit
End If

If objFSO.FileExists(strFileOutput) Then
Set objOutputFile = objFSO.OpenTextFile (strFileOutput, ForWriting)
Else
Set objOutputFile = objFSO.CreateTextFile(strFileOutput, False)
End If


strTarget = "172.24.72.155"
If Ping(strTarget) = True Then
strResult = "True"
set objsuccessflag = objFSO.CreateTextFile(strSuccessFlag, False)
Else
strResult = "False"
End If

strFileOutput = "C:\TJXLogs\" & KMSPing & "KMSPing.csv"



Set objFSO = CreateObject("Scripting.FileSystemObject")
objOutputFile.Write """" & strThisComputer & """,""" & StrOS & """,""" & strResult & """,""" & Now & """"& vbcrlf
objInFile.Close
objOutFile.Close

Function Ping(strComputer)
Dim objShell, boolCode
Set objShell = CreateObject("WScript.Shell")
boolCode = objShell.Run("Ping -n 1 -w 300 " & strComputer, 0, True)
If boolCode = 0 Then
Ping = True
Else

Ping = False
End If

End Function

0

Share this post


Link to post
Share on other sites

Try this, it should show a true or false message


Dim Act :Set Act = CreateObject("Wscript.Shell")
Dim Ip, Return :Ip ="127.0.0.1" '-> Local Address Return Yes
Ping(Ip)
If Return Then
WScript.Echo Return & ", Ip Reply : " & Ip
Else
WScript.Echo Return & ", Ip Reply : " & Ip
End If
Function Ping(P)
If Act.Run("Ping -n 1 -w 300 " & P, 0, True) = 0 Then
Return = True
Else
Return = False
End If
End Function

Rename DemoPing.vbs.txt to DemoPing.vbs to make active

DemoPing.vbs.txt

0

Share this post


Link to post
Share on other sites

Thanks for the reply. I'm still learning all this VB Scripting on the fly here, can you tell me where to add this data in my script? See below:

0

Share this post


Link to post
Share on other sites

I ment to try what I posted, the script you posted is a mess, so I want to start from scratch

and confirm that you can get either tue or false returns.

0

Share this post


Link to post
Share on other sites

What IP Address did you use, that a default local adresss for the computer

running the script.

Here what I done so far


Dim Act :Set Act = CreateObject("Wscript.Shell")

Dim Os
Dim Ip, Return :Ip ="127.0.0.1" '-> Local Address Return Yes

GetOsName()
Ping(Ip)

If Return Then
MsgBox Return & ", Ip Reply : " & Ip & vbCrLf & Os,4128, "Test Positive"
Else
WScript.Echo Return & ", Ip Reply : " & Ip,4128, "Test Negative"
End If

'-> Get Os Name
Function GetOsName()
For Each Obj in GetObject("winmgmts:").InstancesOf(_
"Win32_OperatingSystem")
Os = Obj.Caption
Next
End Function
'-> Ping Computer
Function Ping(P)
If Act.Run("Ping -n 1 -w 300 " & P, 0, True) = 0 Then
Return = True
Else
Return = False
End If
End Function

Ip True post-5386-0-89072700-1357793545_thumb.pn Ip Falsepost-5386-0-06436400-1357793563_thumb.pn

0

Share this post


Link to post
Share on other sites

PLEASE, DataCracker7899. The OP specifically asked for VBScript, not BAT!

This is your "expertise" -

CSS 1 CSS 2 CSS 3 JavaScript 1.1 - 1.8.5 Batch HTML 4 HTML 5 C++ MySQL
Stick with those topics. ;) Edited by submix8c
0

Share this post


Link to post
Share on other sites

PLEASE, DataCracker7899. The OP specifically asked for VBScript, not BAT!

This is your "expertise" -

CSS 1 CSS 2 CSS 3 JavaScript 1.1 - 1.8.5 Batch HTML 4 HTML 5 C++ MySQL
Stick with those topics. ;)

Let me doubt about the "Batch" :whistle: :

jaclaz

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.