Можно ли захватить вывод консоли в программу, например в memo, после выполнения команды
shell('echo "Вывод"');
Получается что "вывод" порождает процесс основной программы.. можно ли как нибудь его перенаправить в memo ?
Модератор: Модераторы
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;
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 215