Последнее обновление:
June 1, 2019

Есть мысль... Жми, напиши!
Новости

  • Рубрик нет

Qt, вызов функции с ограничением по времени выполнения (QtConcurrent::run timeout).

Потребовалось в одном проекте в критическом к скорости выполнения месте дёргать функции сторонней библиотеки, но загвоздка в том, что эти функции внутри ещё и дожидаются результата в цикле/магия. Мне от неё важно только получить код ошибки (если сразу возник), другой результат не так важен (потом запрашивается отдельно).
В общем задача: запустить функцию, по возможности дождаться результат, […]

Views :

53

Qt, QEventLoop and connect/disconnect lambda function

Приветствую!
Кому некогда, можно сразу прыгнуть в конец к итогу.
Бывают ситуации, когда нужно синхронно дождаться завершения асинхронного действия, при этом не подвешивая основной поток (например, не продолжать выполнение функции, пока ответ в QTCPSocket onReadyRead от сервера не придёт).   
В нашем случае для примера давайте подождём с выполнением функции, пока таймер не досчитает до 5. 
Делаем основу:
#ifndef APPCORE_H
#define […]

Views :

406

Кросскомпиляция Qt 5.12 для Raspberry Pi 1,2,3 B+ под Windows

В общем на Ubuntu скомпилили, открываем пост и компилим теперь под Windows.
1. Качаем актуальную версию Raspbian и с помощью WinFLASHTool  пишем её на сд карточку.
2. Так же.
3.
В дальнейшем везде будет подразумеваться х86 версия.
Качаем msys2, ставим в папку C:\SysGCC\msys2\
Качаем MinGW (у меня 730), распаковываем  в папку C:\SysGCC\mingw32 с соблюдением структуры.
Качаем Perl.
Запускаем C:\SysGCC\mingw32.exe,
pacman -Syu #попросит закрыть — закрываем, запускаем вновь […]

Views :

2573

Хоткеи на клавиши мыши

Добрался до настройки кнопок своей мыши, у которой их что-то дофига, и что бы зря не пропадали, решил повесить на них хоткеи.
Устанавливаем xbindkeys для отлова событий и запуска нужных комманд, а что бы вместо запуска комманд мы эмулировали нажатие клавиш установим ещё и xautomation
 
sudo apt-get install xbindkeys
sudo apt-get install xautomation
сразу создаём дефолтный конфиг файл в домашней папке:
xbindkeys […]

Views :

306

Android MySql (QMysql) драйвер для Qt5.6 на Windows и Linux компиляция

В общем понадобилось портировать одну прогу под Андроид arm7, но она плотненько работает с базой данных, а так как я человек впринципе ленивый, то обёртку для REST API сервера было лень писать, решился на компилирование MySQL плагина, но если бы я знал тогда, что это займёт у меня 20 часов…

 
В общем вот вам готовый рецепт из […]

Views :

1196

ldd на Андроид

После портирования проги на девайс, прога в упор не хотела видеть одну из библиотек, решил глянуть через ldd, что же ей надо, но ldd на Андроиде не оказалось =(, а просто ldd её не воспринимает.
Чтож, будем делать аналог ldd но для arm =)
Вот так:
echo 'readelf -d $1 | grep "\(NEEDED\)" | sed -r "s/.*\[(.*)\]/\1/"' | […]

Views :

662

Установка, настройка и пример использования gitolite

Потребовалось организовать свой git-сервер с простым распределением прав доступа и управлением.
Выбор пал на gitolite, как наиболее популярного и, как оказалось, вполне удобного.
В общем, погнали ставить:
На сервере:
устанавливаем сам git
sudo apt-get install git
Добавляем пользователя git, через которого будет работать gitolite и установим ему пароль
sudo useradd -d /home/git/ -m git
sudo passwd git

Теперь нам надо добавить git юзверя к […]

Views :

1089

Печатаем на фискальнике Custom VKP-80K из c++ на Qt

В общем задача была разобраться с печатью именно фискалки, благо с обычной печатью всё просто, попробуем теперь с ним.
Т.к. дела раньше с фискальниками почти не имел, ссался, что в нём уже стоит ЭКЛЗ и все мои тестовые продажи Нидерландов уйдут в память, а потом при проверке налоговая не досчитается несколько ВВП,
но всё оказалась проще, ЭКЛЗ […]

Views :

729

Qt 5.5 zip архивы zip/unzipped (аналог QuaZIP)

В Qt 5.5 и предыдущих есть замечательный «родной» (ну почти) класс для работы с zip архивами.
На самом деле он используется для каких-то внутренних нужд (и даже вроде бы хотят в паблик вынести), но ничего не мешает нам сейчас самим использовать эти классы:
Из папки установки Qt \qtbase\src\gui\text   копируем к себе в проект
qzipwriter_p.h
qzipreader_p.h
qzip.cpp
в файле *.pro проекта добавляем
LIBS […]

Views :

1306

Arduino прошивка загрузчика (bootloader) на новый чип Atmega 328P-PU / 168 через Bit-Bang на самой плате Arduino в Ubuntu 14 c помощью avrdude версии 6.1

Доигрался я со своей Ардуинкой, и сжёг несколько пинов у чипа =))
Но так как они мне все были нужны, сгонял в магазин за заменой, взял чип Atmega 328P   но и программатора у меня под рукой не оказалось да и паять было лень.
Благо на Ардуинке присутствует микросхема от ftdi (ft232rl) благодаря которой Ардуинку можно подключать […]

Views :

2155