Войти

Показать полную графическую версию : [решено] Парсинг 2 ini файлов


Chargos
11-10-2010, 01:07
Распарсить два ini файла, в каждом из которых есть command (к примеру command=c:\windows\notepad) и аргумент (например argument=c:\1.txt) и проанализировать код возврата (если command выполняется, то запустить его). В батнике используется errorlevel. Заранее благодарен

amel27
11-10-2010, 01:40
Chargos, а как насчет структуры INI?.. какие секции, возможные параметры, а лучше привести пример типичного INI
проанализировать код возврата (если command выполняется, то запустить его) »а разве можно "проанализировать код возврата" команды не запуская её?

Anonymоus
11-10-2010, 04:43
Chargos, не совсем понял условие задачи (к чему два ini), но набросал вот такое:

# Это простейший INI-файл со структурой параметр=значение,
# строки начинающиеся со знака # - комментарии.

command=C:\Windows\notepad.exe
argument=C:\test.txt


@Echo Off
Set File=test.ini
For /F "eol=# delims== tokens=1,2" %%i In (%File%) Do (set %%i=%%j)
Call %command% "%argument%" 2>nul
Set Msg=Команда выполнена нормально
If %ErrorLevel% GEQ 1 Set Msg=Команда выполнена с ошибкой
Echo Код ошибки: %ErrorLevel% (%Msg%)
pause>nul

Как видим, используемый ini-файл прописывается в переменную File, далее обрабатывается циклом, значение Command передается на исполнение, в качестве аргумента передается значение Argument. Батник ждет завершения вызванной программы, выводит на экран значение ErrorLevel с пояснениями.

Chargos
27-12-2010, 00:28
Написал условие неверно, но меня поняли и ответили. Спасибо




© OSzone.net 2001-2012