たとえば、このコマンドの出力を取得したい:
system("dir C:\");
またはの :
QProcess::execute("cmd /c dir C:\");
どうやってするか ?
ありがとう !
QProcess process;
process.start("cmd /c dir C:\\");
process.waitForFinished(-1);
QByteArray out = process.readAllStandardOutput();
標準の出力パスを変更して、そこから読み取るパイプにすることができますが、popen()
の代わりに使用する方が簡単ですsystem()
。
Windowsを使用しているように見えるので、を使用します_popen()
。
#include <stdio.h>
....
FILE *fp = _popen("dir c:\", "r");
....
while (!feof(fp)) {
....
}
fclose(fp);