Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Как создать демона на Qt?



  • Пытаюсь найти мануал по созданию демона на Qt, для учебных целей(например чтобы через каждые 5 минут демон запускал программу на пару секунд и закрывал обратно), вроде бы пишут что нужно использовать библиотеку QtService, но в 5 версии Qt этой библиотеки больше нет. Помогите разобраться, с чего начать?


  • Qt Champions 2017

    если QtService не работает для вашего случая, можете пробовать QtDaemon.



  • Константин, а чем, собственно, QtService не устроил?

    Я, например, использовал QtService и столкнулся с одним минусом в Windows - там невозможно было обрабатывать/добавлять/регистрировать кастомные евенты (пользовательские), как помню (например SERVICE_CONTROL_SESSIONCHANGE).

    А твой QtDeamon лишен таких минусов (код несмотрел) ? ;)

    PS: QtService есть в http://code.qt.io/cgit/qt-solutions/qt-solutions.git/, его просто самому собирать нужно.


  • Qt Champions 2017

    @kuzulis said in Как создать демона на Qt?:

    Константин, а чем, собственно, QtService не устроил?
    Я, например, использовал QtService и столкнулся с одним минусом в Windows - там невозможно было обрабатывать/добавлять/регистрировать кастомные евенты (пользовательские), как помню (например SERVICE_CONTROL_SESSIONCHANGE).

    У меня также были проблемы - с интеграцией к Service Control Manager в Windows, била ненадёжной.

    А твой QtDeamon лишен таких минусов (код несмотрел) ? ;)

    Так. Он не прихватывает системные/кастомные евенты и испoльзует WinAPI для контроля процесса.

    --
    Sorry about my russian, I imagine it's quite terrible. ;)



  • Да так же как и просто демон на С++. Функцию Fork никто не отменял



  • Автору, мой тебе совет. Не используй Qt для таких вещей. Нервы целее будут.


Log in to reply