Можно ли захватить вывод консоли в программу, например в memo, после выполнения команды
shell('echo "Вывод"');
Получается что "вывод" порождает процесс основной программы.. можно ли как нибудь его перенаправить в memo ?
Вывод консоли в программу (Решено)
Модератор: Модераторы
-
alex208210
- постоялец
- Сообщения: 207
- Зарегистрирован: 12.05.2010 13:16:51
Вывод консоли в программу (Решено)
Последний раз редактировалось alex208210 11.07.2010 17:54:59, всего редактировалось 1 раз.
тут посмотри, должно помочь
viewtopic.php?f=1&t=2311&st=0&sk=t&sd=a&start=15
viewtopic.php?f=1&t=2311&st=0&sk=t&sd=a&start=15
-
alex208210
- постоялец
- Сообщения: 207
- Зарегистрирован: 12.05.2010 13:16:51
угу помогло)
Код: Выделить всё
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;
