Office中国论坛/Access中国论坛

标题: [求助]如何强制用户到了一定时间退出系统?以防止非正常关机导致的数据库破坏 [打印本页]

作者: secowu    时间: 2005-11-18 21:55
标题: [求助]如何强制用户到了一定时间退出系统?以防止非正常关机导致的数据库破坏
[求助]如何强制用户到了一定时间退出系统?以防止非正常关机导致的数据库破坏

Dim a, bb As Integer



Private Sub Form_Load()

If Time() < #1:13:35 PM# Then

Me.TimerInterval = 0

Else

Me.TimerInterval = 1000

a = 0

bb = 0

End If

End Sub

Private Sub Form_Timer()



If Time() > #1:13:35 PM# Then

    bb = bb + 1

    a = a + 1

   

If a = 2 And bb < 3 Then

   

If MsgBox("现在是非工作时间,系统将会自动关闭" & vbCr & vbCr & "请输入延时密码", vbInformation + vbOKCancel, "防止未正常关闭的数据破坏") = vbCancel Then

MsgBox "未输入密码,操作被取消,现在将关闭系统", vbInformation, "警示"

DoCmd.Quit acPrompt

ElseIf InputBox("现在是非工作时间,系统将会自动关闭" & vbCr & vbCr & "请输入延时密码", "防止恶意的数据破坏") = "jessie" Then

Me.TimerInterval = 0

Exit Sub

ElseIf bb = 3 Then

'输入密码延时3秒后,将强制关闭系统,可是这代码没起作用啊

DoCmd.Quit acPrompt

Else

MsgBox "密码错误,现在将关闭系统", vbInformation, "警示"

DoCmd.Quit acPrompt

End If

End If

End If

End Sub


作者: secowu    时间: 2005-11-18 22:39
是啊。非常有必要。

因为,需要更新程序的时候,

还有人还开着程序,弄得到处找机子

看是谁还开着程序  


作者: secowu    时间: 2005-11-19 20:35
呵呵,一点通,有在么?
作者: goto2008    时间: 2008-1-24 19:09
帮你顶一下
作者: poly    时间: 2008-1-24 19:18
好象可以检测到哪些模块开着,但很遗憾我不会
作者: andymark    时间: 2008-1-24 19:55
远程关闭客户端,试试下面的方法
http://www.office-cn.net/vvb/thread-58218-1-1.html
作者: baije    时间: 2008-1-25 13:38
我的做法是:客户端一个的主界面加入检测代码,隔一段时间进行一次检测(我定的时间是30秒),,数据库中专用一表来保存是否需关闭,1为需关闭,其它为不需关闭.
当服务端需要进行处理时,用SQL更新表中数据,同时记录当前时间,提示等待两分钟并数秒
客户端检测到时,提示1分钟关闭并数秒,到时关闭库
同时客户端启动时检测服务端是否正在处理中.为1时提示并禁止打开客户端.
服务端处理完成,自动删除表中数据,并于使用记录中记录此次事件.
作者: fswxs    时间: 2008-1-25 13:49
原帖由 baije 于 2008-1-25 13:38 发表
我的做法是:客户端一个的主界面加入检测代码,隔一段时间进行一次检测(我定的时间是30秒),,数据库中专用一表来保存是否需关闭,1为需关闭,其它为不需关闭.
当服务端需要进行处理时,用SQL更新表中数据,同时记录当前时间 ...

计时的办法始终不爽,一点通曾说过对正常处理数据有什么影响的,但是也没别的办法
作者: jsf2008    时间: 2008-1-25 15:25
学习中!!!!!!!!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3