Вывод консоли в программу (Решено)

Вопросы программирования и использования среды Lazarus.

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

Вывод консоли в программу (Решено)

Сообщение alex208210 » 11.07.2010 14:21:38

Можно ли захватить вывод консоли в программу, например в memo, после выполнения команды

shell('echo "Вывод"');

Получается что "вывод" порождает процесс основной программы.. можно ли как нибудь его перенаправить в memo ?
Последний раз редактировалось alex208210 11.07.2010 17:54:59, всего редактировалось 1 раз.
alex208210
постоялец
 
Сообщения: 207
Зарегистрирован: 12.05.2010 13:16:51

Re: Вывод консоли в программу

Сообщение serg_iv » 11.07.2010 16:25:45

тут посмотри, должно помочь
viewtopic.php?f=1&t=2311&st=0&sk=t&sd=a&start=15
serg_iv
постоялец
 
Сообщения: 276
Зарегистрирован: 15.10.2005 18:45:46
Откуда: Миасс

Re: Вывод консоли в программу

Сообщение alex208210 » 11.07.2010 17:00:14

угу помогло)

Код: Выделить всё
uses process;
procedure TForm1.vivod;
var
S : TProcess;
Buf, ss : ansistring;
Count : longint;
begin
  S:=TProcess.Create(Nil);
  S.Commandline:='echo "Вывод"';
  S.Options:=[poUsePipes,poNoConsole];
  S.execute;
  SetLength(buf, 1000);
  Repeat
    Count:=s.output.read(buf[1], length(buf));
    ss:=ss + Copy(buf, 1, Count-1);
  until Count=0;
  S.Free;
  memo1.Lines.Add(ss);
end;
alex208210
постоялец
 
Сообщения: 207
Зарегистрирован: 12.05.2010 13:16:51


Вернуться в Lazarus

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

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

Рейтинг@Mail.ru