0
私はc#のProcess.BeginOutputReadLineに相当するC++を知りたかったのですが、別のプロセスの標準出力から非同期的に読み込みました。そのためのAPIはありますか?Process.BeginOutputReadLineのwin32 api
私はc#のProcess.BeginOutputReadLineに相当するC++を知りたかったのですが、別のプロセスの標準出力から非同期的に読み込みました。そのためのAPIはありますか?Process.BeginOutputReadLineのwin32 api
プロセスの標準出力を読み取るには、STARTUPINFO
に渡されたインスタンスに適切なハンドルを割り当てる必要があります。CreateProcess
に渡します。 STARTF_USESTDHANDLES
フラグを付けることを忘れないでください。
通常、匿名パイプが使用され、CreatePipe
によって作成されます。
例としては「Creating a Child Process with Redirected Input and Output」を参照してください。
通常のWin32アプローチ(OVERLAPPED +イベント、IOCompleteion Port、など)を使用して、出力ハンドルを非同期で読み取ることができます。