Запуск qt как потока из другого приложения, написанного на языке C - PullRequest
0 голосов
/ 19 июля 2011

У меня есть запрос. Можем ли мы запустить приложение QT как поток из другого процесса? если мы можем, кто-нибудь может сказать мне, как ??? У меня есть приложение, написанное на языке Си. Как мне нужно запустить приложение Qt как поток из этого процесса. Это потому, что у меня есть некоторые значения для передачи в приложение Qt. Я пытаюсь передать их в качестве аргументов приложению Qt, чтобы использовать эти аргументы в моем окне.

1 Ответ

1 голос
/ 19 июля 2011

Вы смешиваете свою терминологию.

В Linux вы обычно используете fork / exec для управления внешним процессом . Поток - это контекст выполнения в вашем собственном процессе. С помощью метода fork / exec вы можете предоставить аргументы командной строки, а также создать дескрипторы pipe() для захвата stdin / stdout.

Вы также можете ссылаться в приложении Qt прямо на свое собственное.

extern "C" int foo_main (int argc, char ** argv)
{
    QApplication app (argc, argv);
    // rest as normal
}

Вы можете вызывать foo_main из некоторого потока в вашей C-программе, и он будет работать, если вы не будете возиться с другими вещами GUI.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...