本人使用createpipe建立了二个管道,用于执行dos程序时将输入输出转换到管道上去,通过读写管理来控制程序,奇怪的是,其它程序都能通过测试(可能使用了C语言或其它语言),但是delphi写的程序,只要是不马上退出的,都不能正确读写!
如下:
begin
readln(s);
writeln(s);
end;
//上面这个例子能正确读写管道。
begin
readln(s);
writeln(s);
readln;//加了这一行就不行了,因为程序不能马上退出!
end;
只要有停顿,就不能正确地读写,连第一、二行都不执行!
如下:
begin
readln(s);
writeln(s);
end;
//上面这个例子能正确读写管道。
begin
readln(s);
writeln(s);
readln;//加了这一行就不行了,因为程序不能马上退出!
end;
只要有停顿,就不能正确地读写,连第一、二行都不执行!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货