0

我正在根据用户登录来保护我的程序。现在我只允许一个用户登录我的程序一次(它看起来像 Windows Live MSN)。如果检测到相同的用户名已经登录,它会提示消息通知用户“您已经登录”。

使用此设置,如果程序崩溃(这意味着用户尚未注销),我会遇到问题,在这种情况下如何将 user_Status 自动重置为 0?这样,他可以在重新启动程序后登录。

否则,user_Status 为 1,可能不允许用户再次登录。

我可以解决我的问题的最佳方法是什么?

p/s: user_Status = 1 仍然是登录;user_Status = 0 仍然是注销

user_Status 存储在数据库中。

4

1 回答 1

1

我猜你有一个客户端/服务器部分。如果是这样,如果用户已经登录,则创建一个函数以在登录时从服务器 ping 用户。

场景 1:用户 1 已登录并处于活动状态。用户 2 尝试使用用户 1 凭据登录。服务器将 ping 用户 1 并获得主动响应。用户 2 收到消息“您已经登录”

场景 2:用户 1 登录然后崩溃。用户 1 重新启动并尝试再次登录。服务器向用户 1 发送 ping,但没有得到响应,然后服务器允许登录。

这样您就不需要计时器,用户也不需要等待 5 分钟才能再次登录。

于 2012-09-18T14:08:57.597 回答