My application needs to behave slightly differently when it loads if there is already an instance running.
I understand how to use a mutex to prevent additional instances loading, but that doesn't quite solve my problem.
For example:
- Instance 1 loads, gets the mutex.
- Instance 2 loads, can't get the mutex, knows there's another instance. So far, so good.
- Instance 1 closes, releases the mutex.
- Instance 3 loads, gets the mutex, doesn't know that Instance 2 is still running.
Any ideas? Thankfully it doesn't need to deal with multiple user accounts or anything like that.
(C#, desktop application)
Edit: To clarify, the application doesn't need to be restricted to a single instance, just perform a slightly different start-up action if there's another instance already running. Multiple instances are fine (and expected).