Как проверить, запущено ли приложение Qt GUI (в Linux)? - PullRequest
2 голосов
/ 02 июня 2009

Мне нужно проверить, запущено ли уже мое приложение Qt GUI в текущей сессии X . То есть я хочу запретить запуск нескольких его экземпляров. Но работает несколько экземпляров другие пользователи или один и тот же пользователь на другом (то есть удаленном) X-сервере должен быть разрешен.

Как это можно сделать?

Спасибо.

Ответы [ 2 ]

9 голосов
/ 02 июня 2009

Qt уже имеет решение для одного экземпляра на пользователя: QtSingleApplication . Проверьте, подходит ли вам это.

0 голосов
/ 02 июня 2009

Создайте точечный файл (скажем, ~ / .yourapp-xsessionID) при запуске программы и удалите его при выходе; если файл уже существует (т. е. он уже запущен), распечатайте сообщение об ошибке и выйдите.

О проблемах с этим подходом см. Firefox.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...