Michael
Michael

Reputation: 903

How to check if Qt GUI application is already running (in Linux)?

I need to check if my Qt GUI application is already running in the current X session. That is, I want to forbid running several instances of it. But running several instances by different users or by the same user on another (i.e. remote) X server should be allowed.

How can this be done?

Upvotes: 2

Views: 3232

Answers (2)

Marcin Gil
Marcin Gil

Reputation: 69505

Qt has already a solution to single instance per user: QtSingleApplication. Check if this suits you.

Upvotes: 9

janneb
janneb

Reputation: 37198

Create a dotfile (say, ~/.yourapp-xsessionID) when launching the program, and delete it when exiting; it the file already exists (i.e. it's already running) print out an error message and exit.

For the problems with this approach, see Firefox.

Upvotes: 0

Related Questions