我的程序实现期望是这样的:
启动应用程序后
传入用户名
检测该用户是否已经登陆
应用情景详细说明:
用户A启动应用程序x,登陆,使用应用程序x;
用户B启动应用程序x,登陆,使用应用程序x;
用户A再次启动应用程序x,登陆,检测到A已经登陆,弹出框通知.退出;
我的不成立的构想:
用户启动应用程序登陆成功后,在一个指定路径指定文件中写入登陆记录(包含用户名\登陆状态:已登陆);用户退出应用程序时,更改登陆记录(包含用户名\登陆状态:未登陆);
当此用户再次启动此应用程序的时候,读取指定路径指定文件中的登陆记录,如果用户的登陆状态是已登陆,弹框通知.
这个方法的缺陷是如果遇到停电等非正常退出,用户登陆记录中的登陆状态还是已登陆,这时如果用户再次登陆就会被弹框通知.
还有使用单身模式也不太适合.
请教各位高手指导一个实现方法,可以不必写代码,只需实现思路即可.
谢谢!
WinForm检测用户是否已登陆的方法--简单问题--请高手回答!
答案:2 悬赏:40 手机版
解决时间 2021-03-17 11:25
- 提问者网友:留有余香
- 2021-03-16 16:08
最佳答案
- 五星知识达人网友:渡鹤影
- 2021-03-16 16:21
写到注册表里面吧,保存上一次操作启动的时间,和当前操作系统用户上一次登录的时间和操作系统用户名;保存应用程序的登录凭证.
应用程序启动时,
判断保存的数据是否本次操作系统启动后的,
判断操作系统用户是否本次登录的(防止操作用户注销后);
然后判断应用程序的登录凭证.
如果是操作系统是多用户的话,为每个操作系统用户保存应用程序的凭证会麻烦一点;比如我的XP可以多用户登录,同时登录了user1和user2,那么操作系统user1的应用程序凭证能否在user2的环境下生效?
应用程序启动时,
判断保存的数据是否本次操作系统启动后的,
判断操作系统用户是否本次登录的(防止操作用户注销后);
然后判断应用程序的登录凭证.
如果是操作系统是多用户的话,为每个操作系统用户保存应用程序的凭证会麻烦一点;比如我的XP可以多用户登录,同时登录了user1和user2,那么操作系统user1的应用程序凭证能否在user2的环境下生效?
全部回答
- 1楼网友:西风乍起
- 2021-03-16 16:58
using system.diagnostics;
process p = new process(); p.startinfo.filename = @"d:\backup\qq\bin\qq.exe"; p.start();
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯