Есть POS теминал с картридером, он как я понимаю подключен к COM3. Если открыть терминал и провести карточку то получим в теминале строку. Если написать программу и читать stdin то получим эту строку. Я пишу на qt5, читаю чтобы не было блокировки в отдельном треде примерно так:
QTextStream cin(stdin);
for (;;)
{
QString str = cin.readLine();
printf("read: \"%s\"\n", str.toStdString().c_str());
emit readyLine(str);
}
Собственно проблема: приложение графическое, запускаю из терминала, открывается Qt окно - нечитает нифига, переключаюсь на терминал (приложение все еще запущено) - читает.
Где я туплю? Как читать при том что графическое окно будет на переднем плане?