2011-05-23 80 views
0

我有这样的要求。针对特定应用程序的单用户实施

  1. 我的应用程序是Excel的加载项。它使用令牌来授权特定用户。

  2. 加载项中有一个红色/绿色指示器,用于显示应用程序在线/离线。

  3. 如果A已经通过打开Excel实例登录,我的要求是当其他Excel实例在同一台计算机上打开时,它应该使用现有的登录信息并在状态中显示在线/离线状态新的Excel实例。我看到一个使用Semaphore的实现。但是不知道这是否能解决我的需求。

如何达到这个要求?

+0

..什么是你的编程问题?听起来像它会更好地张贴到程序员.stackexchange.com – sra 2011-05-23 07:54:51

+0

嗨,谢拉,谢谢。我想决定用什么来解决这个需求。有些朋友建议信号量。任何人都可以提供一些关于如何实现这一点的提示吗? – Nanda 2011-05-23 07:58:22

+0

到目前为止,你有什么感想? – 2011-05-23 08:01:49

回答

0

如果你想限制实例的数量,那么好的信号量是好的,但在这种情况下你没有,你想要做一些非常简单的IPC。如果这是我的要求,我会添加绑定到本地或命名管道的WCF服务。

在启动时尝试连接到它并找出用户登录的内容,如果无法连接到它启动服务器。如果用户关闭托管服务的实例,您还需要一些机制让另一个实例接管服务器角色。