2015-01-15 9 views
0

Я использую qtscript в приложении для обеспечения возможностей автоматизации для различных функций приложения.qtscript engine - делать системные вызовы

Чтобы обеспечить большую гибкость, мне нужна возможность выполнить другие скрипты (команды/приложения командной строки) из сценария и получить их вывод (само приложение не относится к безопасности - так что вызов случайного кода может быть в порядке).

Это их способ сделать это с помощью базового модуля qtscript или какого-либо стороннего класса, который инкапсулирует это или я должен сделать это самостоятельно?

+1

Вы должны сделать это сами, но это не так сложно, используя оболочку QProcess. См. Соответствующее обсуждение: http://www.qtcentre.org/threads/35725-Using-QProcess-in-QtScript – Archie

+0

@Archie благодарит, что помогло и теперь работает. подсказка «QProcess» мне очень помогла. может быть опубликовано как ответ. –

ответ

2

Процесс может быть порожден через класс QProcess. Он также предоставляет возможности консольного ввода-вывода для извлечения выполненного выходного процесса (стандарт и ошибка).

Однако вам необходимо иметь класс-оболочку, поскольку QProcess не может быть напрямую передан среде сценария (например, он не определяет общедоступные слоты, доступные для скрипта).

См. Related discussion на форуме qtcentre.

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