2015-01-01 5 views
-1

Я очень новичок в пакетных файлах, но у меня есть много опыта в других программах. У меня есть пакетный файл, который запускает два приложения для опроса, которые позволяют удаленному серверу косвенно связываться с другим компьютером в моей сети. Полллер, обращающийся к компьютеру в моей сети, часто возвращает ошибку 1509 (несколько подключений к одному и тому же компьютеру с одинаковыми учетными данными); однако командная строка игнорирует это и продолжает обрабатывать, как если бы этот poller работал нормально. Есть ли способ прервать пакет в случае определенной сетевой ошибки?Обработка ошибок пакетного файла

ответ

0
If errorlevel 1509 if not errorlevel 1510 echo Error 1509 occured 

Тест уровня ошибок всегда совпадает с номером или выше.

+0

Итак, есть способ, после выполнения кода, отвечающего на ошибку, сбросить уровень ошибок до 0? – lukechev

0

Я потерял свой вход в систему. Поэтому, чтобы ответить на ваш последующий запрос, уровень ошибок устанавливается после каждой команды Windows. Сторонние программы делают то, что хотят.

Не пытайтесь перезагрузить его самостоятельно. Windows также устанавливает уровень ошибок в %errorlevel%. Если вы с этим справитесь, он перестанет это делать.

If errorlevel n всегда надежный в отличие от %errorlevel%.

+0

Это решение проблем, которые у нас были в течение многих лет здесь! Я действительно ценю твою помощь. Я искал интернет в течение нескольких дней, и пока я нашел много потоков, обращаясь к переменной уровня ошибок, я не видел никакого адреса, как использовать его любым полезным способом, кроме как вернуть его. Для таких процессов, как мой, которые работают за одну ночь, возврат кода ошибки не устраняет проблему, из-за которой процесс завершился неудачно. – lukechev

Смежные вопросы