Делаю bat-файл для автоматического обновления конфигурации из хранилища. Вопрос в следующем - как при вызове пакетного режима конфигуратора отловить успешно выполнена операция или произошла ошибка (например база уже открыта конфигуратором или хранилище не доступно или не удалось обновить, из-за открытых сеансов у пользователя и т.д.)
сделал вот такой скрипт:
rem ------обновление конфигурации-----------
echo %date% %time%:Начинаю обновление конфигурации>>%logfile%
echo %Errorlevel%
IF NOT %Errorlevel%==0 GOTO ErrorUpdatingConf
Как оказалось, даже если операция не выполнена (например - база уже открыта конфигуратором) - Errorlevel все равно остается не присвоенным. Как еще можно проверить?
(1)
А более человеческого способа нет? Тем более на перед не знаю, какие сообщения могут быть. Разве-что искать, что-то вроде "*ошибк*".... Коряво это как-то
В продолжение - вопрос:
команда FINDSTR /F:<имя файла> /C:ошибка
выдает в ответ
FINDSTR: Не удается открыть <и тут строка из моего файла>
(выводится столько раз, сколько строк в файле)
если оно мне на экран вывело все содержимое файла - значит с правами проблемы нет. FINDSTR же не пытается писать в файл?
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой