C CD不快乐 Unregistered / Unconfirmed GUEST, unregistred user! 2008-07-24 #1 请教,我在建一个管道调用命令行程序的同时,可不可以在命令行里用一个DOS的管道操作符|来同时调用两个命令行程序??<br>我有两个DOS的命令行程序用管道操作符‘|’把它们连起来,在DOS下可以执行,在DELPHI里却不行了,在DELPHI里分开去单独执行其中任何一个都是没问题的,不知道为什么,请教大家。<br>分不多,多见谅!
请教,我在建一个管道调用命令行程序的同时,可不可以在命令行里用一个DOS的管道操作符|来同时调用两个命令行程序??<br>我有两个DOS的命令行程序用管道操作符‘|’把它们连起来,在DOS下可以执行,在DELPHI里却不行了,在DELPHI里分开去单独执行其中任何一个都是没问题的,不知道为什么,请教大家。<br>分不多,多见谅!
T tseug Unregistered / Unconfirmed GUEST, unregistred user! 2008-07-24 #2 没明白你的意思,你是想<br>1、用Delphi写支持管道操作的命令行程序<br>2、在Delphi程序中调用DOS的命令行程序完成管道操作
C CD不快乐 Unregistered / Unconfirmed GUEST, unregistred user! 2008-07-24 #3 是Delphi建立管道调用命令行程序,调用的命令行程序是A.exe|B.exe
T tseug Unregistered / Unconfirmed GUEST, unregistred user! 2008-07-24 #4 思路就是建立管道把两个命令行程序关联起来,重定向stdin, stdout, stderr<br><br>程序1 <br> stdin -> pipe1<br> stdout -> pipe2<br> stderr -> pipe2<br><br>程序2<br> stdin -> pipe2<br> stdout -> pipe3<br> stderr -> pipe3<br><br>如果第一个程序需要输入,你就写pipe1,他的处理结果就会写到pipe2中<br>这样第二个程序就会读到第一个程序的输出<br>然后你读取pipe3就可以得到处理结果
思路就是建立管道把两个命令行程序关联起来,重定向stdin, stdout, stderr<br><br>程序1 <br> stdin -> pipe1<br> stdout -> pipe2<br> stderr -> pipe2<br><br>程序2<br> stdin -> pipe2<br> stdout -> pipe3<br> stderr -> pipe3<br><br>如果第一个程序需要输入,你就写pipe1,他的处理结果就会写到pipe2中<br>这样第二个程序就会读到第一个程序的输出<br>然后你读取pipe3就可以得到处理结果