У меня есть приложение Qt (A), которое запускается как приложение в системном трее Windows.
У меня также есть другое приложение Qt (B), которое запускает / закрывает любой исполняемый файл.
Если яПопробуйте закрыть приложение (A) с его контекстным меню в системном трее, все работает как положено (процесс завершен, значок в системном трее исчезает).
Однако, если я пытаюсь закрыть приложение (A) через приложение (B), значок приложения (A) на панели задач исчезает, но его процесс продолжает выполняться в фоновом режиме.Я вынужден принудительно завершить процесс, чтобы завершить его.
Приложение (B) использует QProcess для запуска исполняемых файлов.При запросе он вызывает QProcess :: terminate (), чтобы закрыть запущенное приложение.
Нет проблем с закрытием приложений, которые на самом деле имеют окна (формы).Проблемы возникают только у этого приложения без системного окна (A).
Я переопределил QWidget :: closeEvent (...), который никогда не вызывается / не вызывается.
Как я могу получить closeEvent (...) для запуска в приложении (A)?
Документация Qt подразумевает, что closeEvent запускается по запросу закрытия окна, что может быть проблемой, так как application (A)не имеет окон.Нужно ли давать заявке (А) форму и скрывать ее?