2014-09-23 3 views
2

Я пытаюсь выяснить, как запустить приложение Windows в Qt. То, что я пытаюсь выполнить, - это щелкнуть мышью по кнопке, и откроется окно приложения в блокноте. Я понимаю, что это функция блокнота в Qt, но я ищу другой способ сделать это. Я хочу, чтобы можно было сделать это с помощью любого приложения Windows. Кто-нибудь знает, как я могу это сделать?Как запустить приложение Windows в Qt

ответ

3

Qt имеет специальный класс QProcess, который позволяет вам это делать.

Например:

void MainWindow::on_pushButton_clicked() 
{ 
    QProcess *proc = new QProcess(this); 
    proc->start("notepad.exe"); 
} 

Есть много полезных методов в этом классе. Проверьте это в документации:

http://qt-project.org/doc/qt-5/QProcess.html

Также вы можете открыть файл в этом приложении. Просто используйте:

proc->start("notepad.exe path"); 

где path что-то вроде этого: G:/test.txt

Чтобы использовать этот класс, вы должны #include <QProcess>

+0

Есть ли какая-то необходимость для Qprocess? Я получаю ошибки. Спасибо за ваш ввод – user3878223

+0

@ user3878223 О, извините, да, вам нужно включить, я уже обновил свой ответ, см. Его, пожалуйста. – Chernobyl

+0

Ничего, я нашел включение после просмотра ссылки, которую вы опубликовали. Это дает мне ошибку, хотя. Это вам знакомо? : -1: ошибка: LNK1123: сбой при преобразовании в COFF: файл недействителен или поврежден – user3878223

2

Вы можете использовать класс QProcess, посмотрите на start или startDetached, например:

QProcess::startDetached("notepad.exe"); 
+0

Я получаю ту же ошибку, что и при попытке ответить выше: -1: ошибка: LNK1123: сбой при преобразовании в COFF: файл недействителен или поврежден – user3878223

+0

Какую визуальную версию вы используете? Это похоже на проблему с VS2010 после установки .NET Framework 4.5 и решение для обновления до VS2010 SP1: http://support.microsoft.com/kb/2757355 – Zlatomir

+0

Я использую QT Creator – user3878223

Смежные вопросы