Анализ вывода в конвеере

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

Анализ вывода в конвеере

Сообщение PapaNT » 04.02.2016 19:05:06

Уважаемые друзья, доброго времени суток!

Приспичило написать консольную утилитку для встраивания в конвейерные вызовы типа:
Код: Выделить всё
some_command | my_program_name

Среда исполнения Win32/64.
Пробовал конструкцию
Код: Выделить всё
reset(output) // В ответ получаю, что файл не открыт для вывода.


Как захватить вывод другой программы в свою обработку (временные файлы не катят)?
PapaNT
постоялец
 
Сообщения: 167
Зарегистрирован: 11.09.2009 12:06:46
Откуда: Москва

Re: Анализ вывода в конвеере

Сообщение Дож » 04.02.2016 19:22:56

Код: Выделить всё
var Line: String;
...
Readln(Line);
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Анализ вывода в конвеере

Сообщение Pavia » 04.02.2016 19:28:42

Пере направлением занимается консоль. Она разбирает команду и организует конвейр. При помощи именованных каналов.
http://www.delphisources.ru/forum/showt ... hp?t=24347
Собственно вам этого и не надо. Вам надо просто создать консольное приложение.
И работать с Input.
В ответ получаю, что файл не открыт для вывода.
Значит у вас выбран другой режим приложение GUI или сервис.
Как создать консоль описано тут:
http://wiki.freepascal.org/Console_Mode_Pascal/ru
Аватара пользователя
Pavia
постоялец
 
Сообщения: 290
Зарегистрирован: 07.01.2011 12:46:51

Re: Анализ вывода в конвеере

Сообщение Zhbr » 04.02.2016 20:06:13

Я как то пайпами уже интересовался, в теме по ссылке мне подсказали. Посмотри viewtopic.php?f=1&t=10501
Zhbr
новенький
 
Сообщения: 44
Зарегистрирован: 31.01.2014 02:34:21

Re: Анализ вывода в конвеере

Сообщение PapaNT » 05.02.2016 02:58:02

Zhbr, спасибо!
Ваш код работает :)

Тему можно считать решенной
PapaNT
постоялец
 
Сообщения: 167
Зарегистрирован: 11.09.2009 12:06:46
Откуда: Москва


Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6

Рейтинг@Mail.ru