| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [с/с++/qt4 формошлепство на linux для простого пол |
| Автор: sunjob 22.6.2020, 17:24 | ||||||||
| не могу отредактировать тему, пожалуйста, подправьте скобки Тема : с/с++/qt4 формошлепство на linux для простого пользователя добрый день 1. планы, описание задачи: хочу разобраться и наработать методику/код "формошлЁп-скрИптинга" для простого пользователя :о) - GUI-формы будут на QT4/Lazarus (в данном случае рассматриваем QT4) в GUI-форме: - вызовы скриптов, внешних команд и пр... - получение выхлопа скрипта & ERRORLEVEL для дальнешего анализа т.к. GUI будут на QT4, то запуск скрипта / чтение выхлопа / ERR_LEVEL, ск.всего, будет на базе QT4 2. настройки и рабочие скрипты - ini-файл с настройками - каталог со скриптами (либо стандартный PATH) 3. чтение ini-файла, запуск скриптов - GUI-программа загружает в буфер содержимое ini-файла - реакция на кнопку -> вызов обработчика, типа:
- обработчик парсит буфер ini-файла, по ID получает имя_скрипта - запуск скрипта, анализ выхлопа/кода возврата и ... дальнейшая реализация в зов-ти от фантазии :о) КОД_1 - запуск внешнего скрипта архив code_1.tar.xz Примерный выхлоп основной программы:
ВОПРОСЫ 1. qDebug - имеет "обрамление" с обоих сторон строк в виде:
(т.е. пробел + символ ковычки) ВОПРОС 1: это особенности отладочного вывода qDebug ? в обоих случаях qDebug & printf при "выхлопе текста" запускаемого скрипта - "странная" печать строки, с переносом в конце, хотя сам выхлоп скрипта без переноса
ВОПРОС 2 :почему? прочие ВОПРОСЫ: - может, для внутреннего использования, лучше/проще по старинке использоавть string, или вообще простой буфер char* str? мне самому не оч. нравиться использовать qt-классы, для таких простых операций, но !!! логично писать в той "эко-системе" в которой пишешь GUI, мало-ли чего там еще в будущем шарахнет использовать, передать "какой особенный" параметр в QT4/GUI... имхо уточнение: - именно QT4 - согласен, для простых GUI на cli/YAD/Zenity, логично "это" делать на bash/perl итд, кому, что удобнее - в инете есть много "простых" примеров с "кодом" на с/с++, но я не встречал что-бы было реализовано одновременно при запуске скрипта получение выхлопа и кодa-возврата. - так-же не встречал подходящих/удобных/минимальных примеров/библиотек парсинга ini-файла, что-бы была организована работа с буфером а не с потоками (т.к. каждый раз для чтения ini-файла создаются/закрываются потоки... это не оптимально, надо будет подходящую библиотеку доробатывать, на примете inih, посмотрим, что можно сделать с ней :о) буду благодарен за подсказки, ссылки, код итд ... вопросы по написанию GUI и парсинг ini-файла будут позже TAG: c,c++,gui,qt4,scripting |
| Автор: borisbn 26.6.2020, 13:08 |
| https://doc.qt.io/qt-5/qdebug.html#nospace там же noquote |
| Автор: sunjob 26.6.2020, 16:30 |
| да, это скрипты выхлоп делают с переносом :о) ... протестировал (немного подрихтовал под себя) библиотеку https://github.com/ndevilla/iniparser простенькая, удобная, вполне годная! итак, имеется два варианта работы с ini-файлом - IniParser - QSettings |
| Автор: sunjob 1.7.2020, 19:39 |
| дотошно потестировал QSettings ... действительно ... не очень удобный и не доработанный "объект" люди аж с 15го года на форумах его ругают, пишут про косяки и недоделанность... видимо, воз и ныне там :о) остановился на IniParser - маленькая, простая, удобная, все на месте, под рукой, понятно-логично спасибо |