Как закрыть консольное приложение посредством ввода ключевого слова?



  • Доброго времени суток. Подскажите пожалуйста решение следующей проблемы. Есть серверное консольное приложение, которое передает видеопоток клиенту по требованию. Можно ли закрыть этот сервер вводом команды в его консоль после прекращения стрима? На Линуксе и Маке этого позволяет добиться QSocketNotifier, в Windows он не работает в силу устройства ОС. Проблема усугубляется блокированием консоли, когда работает цикл QCoreApplication::exec. На данный момент есть предположение, что можно как-то обработать консольное событие ввода при помощи WinAPI, но как это сделать да еще и завязать с Qt парадигмой сигналов-слотов, при том, что ввод в консоль заблокирован... Или может вообще лучше отказаться от этой затеи и завершать приложение командой с клиента. Но что делать, если не удалось соединиться? Аварийно завершать работу ctrl-c или организовывать тайм-аут не хочется.



Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.