Мое приложение должно вести себя несколько иначе, когда оно загружается, если уже запущен экземпляр.
Я понимаю, как использовать мьютексы для предотвращения загрузки дополнительных экземпляров, но это не совсем решает мою проблему.
Например:
- Загружается экземпляр 1, получает мьютекс.
- Загружает экземпляр 2, не может получить мьютекс, знает другой экземпляр. Пока что так хорошо.
- Экземпляр 1 закрывается, высвобождает мьютекс.
- Экземпляр 3 загружает, получает мьютекс, не знает, что экземпляр 2 все еще запущен.
Любые идеи? К счастью, ему не нужно иметь дело с несколькими учетными записями пользователей или что-то в этом роде.
(С#, настольное приложение)
Изменить: Чтобы уточнить, приложение не обязательно должно быть ограничено одним экземпляром, просто выполните несколько другое стартовое действие, если другой экземпляр уже запущен. Несколько экземпляров являются точными (и ожидаемыми).