cmd.exe oder ping.exe defekt?

CitroenDsVier

Lt. Commander
Registriert
Dez. 2013
Beiträge
1.896
Hallo zusammen,

ich habe eine kleine Test-Batch:

Code:
ping -n 1 www.google.de
if %ERRORLEVEL%==1 echo Fehler
Pause

Diese verursacht auf der Win 7 VM keine Probleme. Auf meinem Win8.1 Rechner allerdings hängt sie in einer schleife fest. Es passiert nichts - insofern, dass ständig das selbe passiert (C:\Windows\System32> ping -n 1 www.google.de) <- wird ständig neu ausgeführt.

Wo liegt hier das Problem?
 
Was soll ich sagen; es läuft wie man erwarten darf.

Woran erkennst du das «ständig ausgeführt»? →

→ foxhunter's Idee mit der Firewall hat irgendwie was für sich da ich ein analoges Phänomen beobachtet habe.

CN8
 
naja es läuft ja irgendwie nicht so, wie man es erwarten darf, wenn es auf Windows 7 und 8.1 verschieden läuft.

Woran ich das erkenne? ein "rem" vor das "@echo off" geschrieben -> (C:\Windows\System32> ping blablabla) wird immer wieder ausgeführt.

Was ist daran normal?
 
Nichts!
Dass eine Batch in ein Schleife eintritt ist einfach unmöglich außer sie riefe ich sebst auf.

In der CMD-Box muss ich doch sehen was passiert; wird da nur das PING (wieder und wieder) ausgelöst? Was passiert wenn du vor den Errorlevel einfach mal ein ECHO Weiter setzt, kommt das oder nicht oder ist es Teil der Schleife?

CN8
 
1.) komplettes Batch wäre hilfreich
2.) Was passiert wenn du den ping in der cmd ausführst? Evtl. rufst du dein Script rekursiv auf?
3.) Ein paar Bilder wären hilfreich
 
Unbenannt.jpg

wenn ichs doch sage...
Ergänzung ()

@foxhunter:
1.) siehe oben. Mehr isses nicht. Teilweise durch verzweifeltes rumprobieren noch ein "@echo off" - manchmal mit "rem" davor.
2.) in der cmd ist es problemlos. Wie man es erwarten würde.
3.) Siehe Post #8

wg dem Bild: Wird der localhost durch google ersetzt, ändert das in der cmd auch nur die IP, mehr nicht.
 
Zuletzt bearbeitet:
Also ich könnt mir sowas nur noch erklären, wenn dein Batch so heisst wie ein Befehl im Batch, sozusagen Ping.bat oder Pause.bat, sodaß es sich selbst immer wieder aufruft... Benenne doch mal dein Batchdatei um (wie hast sie denn genannt?)
 
Gern geschehen :p
Kannst allerdings auch Ping.bat lassen, und dafür die Batch abändern:

Code:
    ping.exe -n 1 www.google.de
    if %ERRORLEVEL%==1 echo Fehler
    Pause
 
Zuletzt bearbeitet:
Zurück
Oben