파일을 STDIN으로 작성해야합니다. 이 파일은 다른 EXE가 액세스하여 마이크로 컨트롤러에 STDIN 스트림을 쓰게됩니다.DELPHI를 사용하여 STDIN Stream에 파일을 쓰는 방법은 무엇입니까?
Delphi 2010을 사용하여 STDIN에 파일을 쓰는 방법에 대한 도움을받을 수 있습니까?
대단히 감사합니다.
파일을 STDIN으로 작성해야합니다. 이 파일은 다른 EXE가 액세스하여 마이크로 컨트롤러에 STDIN 스트림을 쓰게됩니다.DELPHI를 사용하여 STDIN Stream에 파일을 쓰는 방법은 무엇입니까?
Delphi 2010을 사용하여 STDIN에 파일을 쓰는 방법에 대한 도움을받을 수 있습니까?
대단히 감사합니다.
나는 STDOUT을 의미한다고 생각합니다.
Allen Bauer's answer은 무엇입니까?
다른 EXE가 STDIN 스트림으로 볼 수있는 일종의 출력을 작성하는 것처럼 보입니다. 이 경우, Serg가 언급 한 Allen Bauer의 대답은 거의 끝나지 만 충분하지 않습니다.
이 방법을 설명하는 일부 sample code on MSDN이 있지만 모두 C로되어있어 읽기가 어렵습니다. 중요한 부분은 다음과 같습니다.
Windows.pas에 선언 된 CreatePipe를 호출하십시오. 처음 두 매개 변수는 var이고 CreatePipe는 파이프의 읽기 핸들과 쓰기 핸들로 채울 THandle 변수에 대한 매개 변수입니다. 그런 다음 TStartupInfo 레코드를 설정해야합니다. 파이프에 대한 읽기 핸들을 TStartupInfo의 hStdInput
필드에 지정하십시오.
두 번째 EXE를 생성하도록 CreateProcess에 TStartupInfo를 전달한 다음 Allen의 예제와 같이 THandleStream을 만들어 파이프의 쓰기 핸들을 전달할 수 있습니다. 그렇게하면 스트림에 쓰는 모든 내용이 다른 EXE에서 읽을 수 있도록 읽기 끝으로 파이프됩니다.
도움이 되길 ...
질문이 파이프에 관한 경우, SO 질문에 대한 답변을보십시오. http://stackoverflow.com/questions/512366/how-do-i-send-a-string-from-one-instance-of-my-delphi -program-to-another – kludg
* STDIN *에서 * 읽고 * STDOUT *에 쓸 수 있습니다. –
@ Andreas : 그는 "다른 프로세스를 위해 STDIN 역할을하는 결과물에 쓰기"를 의미한다고 생각합니다. –
@Mason : 아, 그래요, 정말로 가능합니다. –