Script für Ping

21/01/2008 - 14:01 von Beck, Alwin | Report spam
Hallo,
bei mir steigt öfters ein Geràt aus. Gibt es ein Script, welches z.B.
alle Stunde das Geràt anpingt - wenn dieses dann keine Antwort gibt,
sollte
eine E-Mail gesendet werden.

Danke
Gruß
Alwin
 

Lesen sie die antworten

#1 Pegasus \(MVP\)
21/01/2008 - 14:26 | Warnen spam
"Beck, Alwin" wrote in message
news:
Hallo,
bei mir steigt öfters ein Geràt aus. Gibt es ein Script, welches z.B.
alle Stunde das Geràt anpingt - wenn dieses dann keine Antwort gibt,
sollte
eine E-Mail gesendet werden.

Danke
Gruß
Alwin



Die einfachste Lösung besteht wohl aus einer Batch-Datei, welche du
über den Task Scheduler alle Stunden abrufst:

@echo off
ping 192.168.1.33 | find /i "bytes=" && goto :eof
blat.exe /.. /.. /..

Blat.exe ist ein Command Line Mailer, den du von verschiedenen
Orten herunterladen kannst.

Mit einem Script geht's ein bisschen komplizierter. Das folgende
Programm funktioniert im Prinzip, aber ich habe es nicht im
Detail geprüft.

Set objShell = CreateObject("WScript.Shell")
Const Addresse = "192.168.1.33"

if not Ping(Address) then SendMail

'==Function Ping(PC)
Set objWshScriptExec = objShell.Exec("ping.exe " & PC)
Set objStdOut = objWshScriptExec.StdOut

awake=False
Do Until objStdOut.AtEndOfStream
strLine = objStdOut.ReadLine
awake = awake Or InStr(LCase(strLine), "bytes=") > 0
Loop
Ping = awake
End Function
'==Const sender = ""
Const receiver = ""
Const subject = "Ping Test"
Const server = "smtp.domain.de"
Const user =
Const password = "MeinPasswort"
Const schema = "http://schemas.microsoft.com/cdo/co...ion/"
Dim objEMail
Dim body
body = Addresse & " ist nicht erreichbar"

Set objEMail = CreateObject("CDO.Message")
With objEMail
.From = sender
.To = receiver
.Subject = subject
.Textbody = body
With .Configuration.Fields
.Item (schema & "sendusing") = 2
.Item (schema & "smtpserver") = server
.Item (schema & "smtpserverport") = 25
.Item (schema & "smtpauthenticate") = cdoBasic
.Item (schema & "sendusername") = user
.Item (schema & "sendpassword") = password
End With
.Configuration.Fields.Update
.Send
End With

Ähnliche fragen