Попробовал по аналогии сделать подобное на винде.
Т.е. в винде в консоли набираю так:
D:\projects\TEST\qprocess>ipconfig | findstr IP
.рёЄЁющър яЁюЄюъюыр IP фы Windows
IP-рфЁхё . . . . . . . . . . . . : 192.168.1.64
т.е. выводит правильно адрес = 192.168.1.64
Но, если пишу на Qt4 приложение:
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
QProcess myProcess;
QString sCmd("cmd"); // или в *.nix заменяем на "/bin/sh"
QStringList slArgs;
slArgs << "ipconfig | findstr IP";
myProcess.start(sCmd, slArgs);
qDebug() << myProcess.readAllStandardOutput();
return app.exec();
}
и запускаю его, то выводит:
""
подскажите, что не так?
-------
и даже так не работает:
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
QProcess myProcess;
QString sCmd("ipconfig");
myProcess.start(sCmd);
if (!myProcess.waitForStarted())
qDebug() << "Starting fail";
qDebug() << myProcess.readAll();
return app.exec();
}