I thought I was going to get the output from a QProcess using the following code:
// Start the process
process.start(tr("php-cgi www/test.php"),QIODevice::ReadWrite);
// Wait for it to start
if(!process.waitForStarted())
return 0;
// Continue reading the data until EOF reached
QByteArray data;
while(process.waitForReadyRead())
data.append(process.readAll());
// Output the data
qDebug(data.data());
qDebug("Done!");
What I am expecting is to see the output from the program printed to the debug console, but all I see is:
Done!
I know that:
- The program is started fine, because the message at the end is printed.
- The program does print output because running the exact same command in the terminal produces a long string of text as expected.
What am I doing wrong here?