Однопользовательская реализация для конкретного приложения - PullRequest
0 голосов
/ 23 мая 2011

У меня есть такое требование.

  1. Мое приложение является надстройкой для Excel.Он использует токен для авторизации определенного пользователя.

  2. В надстройке есть красный / зеленый индикатор, показывающий, что приложение подключено к сети / оффлайн.

  3. Если A уже вошел в систему, открыв экземпляр Excel, мое требование заключается в том, чтобы при открытии другого экземпляра Excel на том же компьютере он использовал существующую зарегистрированную информацию и отображал состояние как онлайн / офлайн в новомЭкземпляр Excel.Я видел реализацию с использованием семафора.Однако не уверен, может ли это быть хорошим решением для решения моих задач.

Как выполнить это требование?

1 Ответ

0 голосов
/ 23 мая 2011

хорошо, семафор хорош, если вы хотите ограничить количество экземпляров, но в этом случае вы не хотите, вы хотите сделать очень простой IPC. Если бы это было моим требованием, я бы добавил службу WCF, связанную с локальным или именованным каналом.

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

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