Вывод данных из консоли c++
У меня есть bat файл который выполняет загрузку файлов. Я хотел вывести все данные которые он даёт в отдельное окно в программе (например, graphicsView или textArea). Сделал что-то:
MainWindow::~MainWindow()
{
QString program = "myfile.bat";
QStringList arguments;
arguments << "";
QProcess *myProcess = new QProcess(this);
myProcess->start(program, arguments);
while (myProcess){
ui ->label->setText(myProcess->read());
}
delete ui;
}
Но последняя строка не считывает данные. Как сделать считывание всех данных из консоли (их может быть разное количество) и выводить их в текстовый элемент в программе? И ещё мне нужно чтобы не появлялось окно cmd (сейчас это так и есть)
Ответы (1 шт):
Автор решения: Alexander Chernin
→ Ссылка
Воспользуйтесь сигналом readyReadStandardOutput:
connect(myProcess, &QProcess::readyReadStandardOutput, [&]() {
ui->label->setText( myProcess->readAllStandardOutput() );
});
Консоль отключается в pro-файле:
CONFIG -= console