We can assume a timeout with an non-overlapping ReadFile, but indirectly.
, SetCommTimeouts, , , ReadTotalTimeoutConstant . ( : , , , , , .)
ReadFile , , . - - , , -, dwRead . 1 , if dwRead = 0, -, .
, ( , - ) :
COMMTIMEOUTS timeouts = { 0,
0,
10,
0,
0
};
SetCommTimeouts(defaultSTDIN, &timeouts);
while(GetExitCodeProcess(processInfo.hProcess, &exitCode)
&& exitCode == STILL_ACTIVE)
{
ReadFile(defaultSTDIN, chBuf, 1, &dwRead, 0);
if (dwRead == 0) {
}
WriteFile(writingEnd, chBuf, 1, &dwWritten, 0);
}