Я хочу запустить двоичный файл C++, который я создал из приложения Qt. Как это возможно ? В Java у меня было что-то вроде Runtime.exec()
. Не могли бы вы рассказать мне, как это возможно в рамках Qt?Запуск C++ двоичного кода изнутри Qt и перенаправление вывода двоичного кода в текстовое поле приложения Qt
Кроме того, хотя мой бинарный файл работает, я хочу, чтобы выход этой программы (которая теперь записывается в консоль) записывается в текстовое поле в Qt. Я могу легко сделать textbox.setText(), если бы у меня были данные, написанные на консоли в строке. Таким образом, в основном вопрос заключается в том, как получить доступ к данным, которые программа должна писать на консоль, в то время как она фактически запускается изнутри Qt-инфраструктуры.
Я знаю, что я могу решить обе эти проблемы, просто выполнив и скомпилировав свой код изнутри Qt, но я спрашиваю, потому что я нахожусь в середине разрыва времени и некоторых проблем с дизайном. Если эта причина не всплывают лодку, любезно думать о вопросе, как домашнее задание вопрос и помочь мне :)
спасибо. Поскольку я нахожусь в Linux, мне придется попробовать '/ bin/bash' вместо' cmd.exe'. Я попробую это! Благодарю. – Chani
Ahh, Linux ... (как я могу сделать ошибку и создать впечатление, что я буду участником Windows в моем _very first_ ответе здесь?;)). Обратите внимание, что 'dir' - это не программа для Windows, а команда оболочки, поэтому мне пришлось выполнить' cmd.exe' и попросить ее выполнить 'dir'. В Linux вы можете напрямую выполнить программу 'ls', например' process.start ("/ bin/ls") '. Также обратите внимание, что для Linux-кода вам не нужен флаг QIODevice :: Text OpenMode для правильных окончаний строк «\ n». – axxel