Аргумент не распознается, если передается с QProcess

Мне сложно сдать -vo аргумент для mplayer с помощью QProcess,
Вот минимальный пример:

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);

QString program;
program = "C:\\mplayer-svn-38008\\mplayer.exe";

QStringList arguments;
arguments << "-vo gl" << "C:\\test.mp4";

QProcess *m_process = new QProcess(this);
m_process->start(program, arguments);
}

Процесс выводит:

Неизвестная опция в командной строке: -vo gl

использование того же аргумента в оболочке Windows приводит к правильному поведению:

>mplayer -vo gl C:/test.mp4

Кроме того, удалив этот аргумент из QStringList работает.
Почему -vo Опция распознается из командной строки, но не из QProcess?

0

Решение

Вы должны отделить каждый аргумент, разделенный пробелом:

arguments << "-vo"<< "gl" << "C:\\test.mp4";
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]