Я хотел бы знать эквивалент C ++ для Process.BeginOutputReadLine в c #, где я асинхронно считываю из стандартного вывода другого процесса. Есть ли API для этого?
Чтобы прочитать стандартный вывод процесса, необходимо назначить соответствующий дескриптор экземпляру STARTUPINFO, переданному в CreateProcess. Не забудьте включить флаг STARTF_USESTDHANDLES.
STARTUPINFO
CreateProcess
STARTF_USESTDHANDLES
Обычно используется анонимный канал, созданный через CreatePipe.
CreatePipe
См. " Создание дочернего процесса с перенаправленным вводом и выводом " для примера.
Вы можете использовать обычные подходы Win32 (событие OVERLAPPED +, порт IOCompleteion, ...) для асинхронного чтения дескриптора вывода.