我需要向STDIN写一个FILE。该FILE将由另一个EXE访问,该EXE将在微控制器中写入STDIN流。
你能帮我看一下如何使用Delphi 2010将文件写入STDIN吗?
非常感谢!
答案 0 :(得分:3)
我认为你的意思是STDOUT。
Allen Bauer's answer是你在寻找什么?
答案 1 :(得分:2)
看起来你正试图写一些其他EXE将看作STDIN流的输出。在那种情况下,Serg提到的Allen Bauer的答案很接近,但对你来说还不够。
有一些sample code on MSDN解释了如何做到这一点,但它全部都在C中,难以阅读。重要的是这个:
调用CreatePipe,它在Windows.pas中声明。前两个参数是THandle变量的 var 参数,CreatePipe将使用读取句柄和管道的写入句柄填充。然后,您需要设置TStartupInfo记录。将管道的读取句柄分配给TStartupInfo的hStdInput
字段。
您将TStartupInfo传递给CreateProcess以生成第二个EXE,然后您可以像Allen的示例中那样创建一个THandleStream,并将其传递给管道的写入句柄。这样,您在流中写入的任何内容都会通过管道传输到读取端,以供其他EXE读取。
希望有帮助...