МихаилллMarch 13, 2020, 10:41 a.m.
Как в qt запустить скрипт php
Добрый день.
У меня есть пара скриптов на php, их можно запускать из компндной строки и они выводят в командную строку текст
Можно-ли в qt эмитировать командную строку, запускать скрипты и получать текст?
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
Г
- Геній
- Sept. 13, 2024, 10:46 p.m.
C++ - Test 001. The first program and data types
- Result:66points,
- Rating points-1
t
- torgaev_2024
- Sept. 8, 2024, 4:20 p.m.
C++ - Test 001. The first program and data types
- Result:33points,
- Rating points-10
Last comments
How to Copy Files in Linux Задумывались когда-нибудь о том, как мы привыкли доверять свои вещи службам грузоперевозок? Сейчас такие услуги стали неотъемлемой частью нашей жизни, особенно когда речь идет о переездах между …
ВР
How to Copy Files in Linux Screenshot_20240802-065123.png
Влад РусоковAug. 2, 2024, 11:47 a.m.
QML - Lesson 016. SQLite database and the working with it in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Qt Linux - Lesson 001. Autorun Qt application under Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Lesson 007. Working with ICMP Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий КононенкоFeb. 5, 2024, 12:50 p.m.
Now discuss on the forum
Evgenii LegotckoiJune 25, 2024, 1:11 a.m.
при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …
BlinCTJune 25, 2024, 11 a.m.
BlinCTMay 5, 2024, 3:46 p.m.
Evgenii LegotckoiMay 3, 2024, 12:07 a.m.
Добрый день.
Команды можно выполнять через QProcess, посмотрите эту статью
Сделал как у Вас, но не работает.
Получаю такую ошибку
А если просто команда, то получаю ошибку:
Скажите пожалуйста, что не так?
Это не моя статья, а другого пользователя. А вообще нужно дождаться выполнения предыдущего процесса, прежде чем выполнять следующий.
Пробовал запускать один процесс, предворительно расположив скрипты в папке с билдом. Получаю всё туже ошибку:
Выглядит так, что у вас QProcess объект был разрушен раньше, чем скрипт выполнился, выглядит так, что вы не дожидаетесь выполнения php скрипта, но уже успеваете уничтожить объект ParserApi. Нужно логику переписывать. QProcess имеет сигнал о изменении статуса выполнения, от них и нужно отталкиваться.
Там есть еще сигнал &QProcess::finished , но их 2 (перегруженный), как его привязать?
Такая запись выдает ошибку no matching member function for call to 'connect'
Используйте QOverload
Странно, у меня не находится #include "QOverload" и поиск не выдает такого класса у qt
Он находится в global заголовочном файле, достаточно написать #include <QObject>
По аналогии с Ваши написал так
но получаю ошибки:
::of(
)'
::of(&QProcess::finished), this, QOverload
::of(&ParserApi::replyCheckFines));
::of(void (ParserApi::*)())'
::of(&QProcess::finished), this, QOverload
::of(&ParserApi::replyCheckFines));
ошибка: no matching function for call to 'QOverload
connect(process, QOverload
ошибка: no matching function for call to 'QOverload
connect(process, QOverload
^
^
Во первых, зачем в шаблонном аргументе QProcess ? В статье такого не было.
Во вторых какая сигнатура у метода ParserApi::replyCheckFines ?
Взял пример из документации с лямбдой
Теперь программа не вылетает, но все еще выдает туже ошибку, а дебаг возращает "".
Что же не так?
В линуксе получаются те-же ошибки
Но вот так работает process->start("notepad");
А сейчас и process->start("notepad"); перестало работать, похоже этот класс создает какой-то поток, который не закрывается с закрытием программы. Не работает даже после перезагрузки. Что-же с этим делать?
Не работало, потому что объект класса уничтожался после закрытия конструктора.
Когда сделал так, все заработало
Ну вот, как и говорил выше ссылка на сообщение