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

Я разрабатываю программу, используя быстро. Я использую индикатор, который может скрывать / показывать главное окно.

Но когда я запускаю приложение из модуля запуска, он запускает новый экземпляр этого приложения (поэтому будет показан дополнительный индикатор). Вместо того, чтобы просто показывать главное окно предыдущего запущенного приложения.

Как обычно использовать только один индикатор?

1
задан 28 September 2012 в 16:51

2 ответа

Я нашел даже лучшее решение (хотя и немного более сложное). Вы можете не только проверить, запущен ли ваш процесс, но и предоставить некоторые данные, если он уже запущен. Пожалуйста, проверьте это решение .

0
ответ дан 28 September 2012 в 16:51

Во-первых, убедитесь, что у вас есть веская причина для этого. Люди ожидают, что приложения будут работать так, как вы описали в своем посте. Даже если вам лично это может не понравиться.

Но, чтобы ответить на ваш вопрос, один из самых простых способов сделать это - создать файл (например, в каталоге конфигурации) при запуске, который вы удаляете при выходе из приложения. Перед запуском приложения вы проверяете свой код, если другой экземпляр уже активен, и если это так, вы выходите напрямую. Если вы также хотите сфокусировать активное приложение, вам нужен способ межпроцессного взаимодействия. Например через сокет. См. http://docs.python.org/library/ipc.html для получения дополнительной информации.

0
ответ дан 28 September 2012 в 16:51

Другие вопросы по тегам:

Похожие вопросы: