KVRSOFT - Как да уловим целия изход в конзолата
Контроли, Windows, SysUtils, формуляри;
функция GetDosOutput (const CommandLine: низ): низ;
функция GetDosOutput (const CommandLine: низ): низ;
StdOutPipeRead, StdOutPipeWrite: THandle;
Буфер: масив [0.255] от Char;
WorkDir, Line: низ;
nLength: = SizeOf (SA);
// създаване на канал за пренасочване на stdout
CreatePipe (StdOutPipeRead, // манипулатор за четене
StdOutPipeWrite, // дръжка за запис
@SA, // атрибути за сигурност
0 // брой байтове, получени за тръбата - 0 по подразбиране
// Създаване на дъщерен процес, използвайки StdOutPipeWrite като стандартен изход,
// и също така проверете дали не се показва на екрана.
FillChar (SI, SizeOf (SI), 0);
dwFlags: = STARTF_USESHOWWINDOW или STARTF_USESTDHANDLES;
hStdInput: = GetStdHandle (STD_INPUT_HANDLE); // стандартният вход не се пренасочва
// Стартирайте компилатора от командния ред