Восстановление базы данных MySQL с помощью QProcess, на самом деле не может работать с простым перенаправлением вроде '<' - PullRequest
0 голосов
/ 05 октября 2011

Итак, сначала восстановите имя файла по QFileDialog в fName и:

  QProcess *proc = new QProcess ();
  QStringList arguments;
  arguments << "-u" << "USER_NAME"
            << "-pPASS_WORD" << "<"
              << fName;
#ifdef WIN32
    proc->start("mysql.exe" , arguments);
#else
    proc->start("mysql" , arguments);
#endif

Но это просто не работает, я всегда вижу вывод того, что делает «mysql --help», кажется, чтоуказаны неверные параметры.Однако вручную выполните эту работу.

1 Ответ

2 голосов
/ 05 октября 2011

Вы не должны перенаправлять стандартный ввод с аргументами.Вместо этого используйте setStandartInputFile (const QString & fileName) .

...