Консультация № 159651
05.02.2009, 07:02
0.00 руб.
0 2 1
Здравствуйте эксперты! Есть не большой код дозвона dial-up (в приложении)

bat файл должен дозваниваться до другого компьютера, проверять на ping связь и, если ping не прошел перезваниваться.... вроде все работает... но спустя дня два приходиться вручную его перезапускать.
Помогите оптимизировать батник.
Спасибо.

Приложение:
@echo OFF

:start
rasdial 1 /d
rasdial 1 username password /PHONE:221113
if ERRORLEVEL 619 goto start

:testing
ping 172.25.8.215 -l 1 -n 5 -w 15000

if %errorlevel%==201 goto start

if %errorlevel%==15 goto start

:null
sleep 10
goto testing

:end

Обсуждение

давно
Посетитель
7438
7205
05.02.2009, 12:02
общий
это ответ
Здравствуйте, Djoin!
Ping не всегда правильно выдает код возврата.
Достаточно распространенный способ проверки - это сочетание команды ping и find

Приложение:
@echo OFF

:start
rasdial 1 /d
rasdial 1 username password /PHONE:221113
if ERRORLEVEL 619 goto start

:testing
ping 172.25.8.215 -l 1 -n 1 -w 15000 | find "TTL=" > NUL

if %errorlevel%==1 goto start

:null
sleep 10
goto testing

:end
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
7438
7205
05.02.2009, 12:06
общий
Подправил в ответе: зачем посылать 5 пакетов, достаточно одного.
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
Форма ответа