У меня есть программа, которая выполняет .bat файлы для MS Windows и .command файлы для macOS .Оба этих исполняемых файла работают как скрипты запуска для другой программы - Render Engine.Этот Render Engine генерирует вывод в консоль.Я хочу заменить консоли, которые открываются каждый раз, когда я выполняю сценарий, с более дружественным интерфейсом с расчетным временем и индикаторами выполнения, но мне нужно знать, что именно показывает консоль в этот момент, чтобы иметь возможность рассчитать все это.Мой вопрос, есть ли способ получить вывод в реальном времени с консоли, работающей в режиме реального времени в строку Delphi?
С VCL, который можно было сделать с помощью JEDI или процедуры GetDosOutput
.И это действительно работало с приложениями VCL.
Выполнение фрагмента кода
{$IFDEF MSWINDOWS}
ShellExecute(0, 'OPEN', PChar('C:\ProgramData\AErender\aerender' + i.ToString + '.bat'), '', '', SW_SHOWNORMAL);
{$ENDIF MSWINOWS}
{$IFDEF POSIX}
//Grab ownership of executable
_system(PAnsiChar('chmod +x ' + AnsiString(GetEnvironmentVariable('HOME') + '/Documents/AErender/aerender' + i.ToString + '.command')));
//Execute
_system(PAnsiChar('open ' + AnsiString(GetEnvironmentVariable('HOME') + '/Documents/AErender/aerender' + i.ToString + '.command')));
{$ENDIF POSIX}