Qtを使用してコマンドラインから.cmdファイルを実行しようとしています。私は.cmdファイルを起動できるようにする必要があります。そして、それが成功したかどうかを解釈できるように、行出力を読み込む必要があります。Qtを使用して.cmdファイル出力からエコーを読み取る
次のように私がテストしていマイ.cmdのファイルは次のとおりです。コマンドラインからこれを実行する
@ECHO OFF
ECHO myBat Started.
ECHO myBat Ended.
は「myBatを開始。」私を与えます「myBat Ended」が続きます。
以下は私のコードで、データ出力の読み込みを試みています。
QString batName = "/path/to/*.cmd";
QProcess p;
qDebug() << "starting command";
p.start("cmd.exe", QStringList() << batName);
if (p.waitForStarted()){
qDebug() << "cmd started";
p.waitForFinished();
qDebug() << p.readAllStandardOutput();
} else {
qDebug() << "Failed to start";
}
私がこれを実行すると、「開始コマンド」、「cmd起動」、「」が続きます。だから私は正しく(私は思う)コンソールを開いている、それは完了するが、その後、私はデータの出力を取得していない。
コマンドラインの出力を読むために変更する必要はありますか?