Foxtable(狐表)用户栏目专家坐堂 → 一个帐号同时在不同电脑上登录,退出系统的问题


  共有5101人关注过本帖树形打印复制链接

主题:一个帐号同时在不同电脑上登录,退出系统的问题

帅哥哟,离线,有人找我吗?
小猪鑫鑫
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:832 积分:5867 威望:0 精华:6 注册:2011/5/27 11:41:00
一个帐号同时在不同电脑上登录,退出系统的问题  发帖心情 Post By:2014/3/25 13:58:00 [显示全部帖子]

狐爸:现在在做一个人在不同电脑上登录,最先登录的电脑自动退出系统时遇到一点点问题,请指教

 

我在项目事件中有下面的代码,就是退出时确认一下是否真的退出

BeforeCloseProject

Dim Result As DialogResult

Result = Messagebox.Show("请问是否确定要退出琅日信息系统?","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

If Result = DialogResult.No Then '如果用户选择否

    e.Cancel = True '取消关闭项目

Else

    e.skipsave =True

End If


 

然后我在计划管理中有下面的代码,就是判断一个人是否在不同电脑上同时登录

Dim IPAdress As System.Net.IPAddress

Dim HostName As String

HostName = System.Net.Dns.GetHostName '获得本机的机器名

IPAdress = System.Net.Dns.GetHostByName(HostName).AddressList.GetValue(0) '获得本机的IP

 

Dim i As new SQLCommand

Dim ts As Integer

i.C

i.CommandText ="select count(工号) as 台数 from {SY用户登录表} where 工号 ='" & _username & "' and 状态 ='在线'"

ts =i.ExecuteScalar

output.show(_username)

output.show(ts)

If ts >=2

    Dim cmb As new SQLCommand

    cmb.C

    cmb.CommandText ="update {SY用户登录表} set 离线时间 ='" & Vars("sqldt") & "' ,状态 ='离线' where 工号 ='" & _username & "' and IP地址 ='" & IPAdress.ToString & "' and 状态 ='在线'"

    cmb.ExecuteNonQuery

    syscmd.project.Exit(False)

End If


 

现在的问题时,当系统监测到有人同时在不同电脑上登录时,它会执行计划管理中的代码,退出系统,但退出时它还是会执行这个BeforeCloseProject里面的代码,弹出“是与否”的对话框,需要人为处理才能退出系统,我想请问能不能直接退出,不要人为确认点击“是”,但这个BeforeCloseProject里面的代码还是需要保留的


 回到顶部
帅哥哟,离线,有人找我吗?
小猪鑫鑫
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:832 积分:5867 威望:0 精华:6 注册:2011/5/27 11:41:00
  发帖心情 Post By:2014/3/25 14:04:00 [显示全部帖子]

呵呵,谢谢Bin老师,很好的想法,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
小猪鑫鑫
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:832 积分:5867 威望:0 精华:6 注册:2011/5/27 11:41:00
  发帖心情 Post By:2014/3/25 19:45:00 [显示全部帖子]

谢谢4楼Isy老师,我觉得您的意见更简单一些,谢谢指点!

 回到顶部