RpbertS
05-22-2001, 08:12 AM
anyone have a sample dbase showing how to autokick someone if they have been inactive for 10 minutes?
thanks
please send to wallyg135@yahoo.com
thanks
please send to wallyg135@yahoo.com
|
View Full Version : auto kick RpbertS 05-22-2001, 08:12 AM anyone have a sample dbase showing how to autokick someone if they have been inactive for 10 minutes? thanks please send to wallyg135@yahoo.com ElsVanMiert 05-23-2001, 01:50 AM From the ACCESS ONLINE ENCYCLOPEDIA (www.unsoftwareag.com) article M29: How can I close my application if nobody works with it ? Specially in multi-user-applications it might be important to close open forms or the application of users that do not work with it for a certain time . Following a function that has to be integrated in the Timer Event of a permanently open (hidden) form. This function controls the idle time of the application: How long does the focus stay on the same control of the same form. If this time exceeds the IDLEMINUTES constant, then the function fExitApplication is called. NOTE: The TimerInterval setting indicates how often (in milliseconds) the application checks for user inactivity. A setting of 1000 equals 1 second. You can remotely log off users in a network environment with PowerUp Solution N2! Sub Form_Timer() ' IDLEMINUTES determines how much idle time to wait before ' running the IdleTimeDetected subroutine. Const IDLEMINUTES = 5 Static PrevControlName As String Static PrevFormName As String Static ExpiredTime Dim ActiveFormName As String Dim ActiveControlName As String Dim ExpiredMinutes On Error Resume Next ' Get the active form and control name. ActiveFormName = Screen.ActiveForm.Name If Err Then ActiveFormName = "No Active Form" Err = 0 End If ActiveControlName = Screen.ActiveControl.Name If Err Then ActiveControlName = "No Active Control" Err = 0 End If ' Record the current active names and reset ExpiredTime if: ' 1. They have not been recorded yet (code is running ' for the first time). ' 2. The previous names are different than the current ones ' (the user has done something different during the timer ' interval). If (PrevControlName = "") Or (PrevFormName = "") _ Or (ActiveFormName <> PrevFormName) _ Or (ActiveControlName <> PrevControlName) Then PrevControlName = ActiveControlName PrevFormName = ActiveFormName ExpiredTime = 0 Else ' ...otherwise the user was idle during the time interval, so ' increment the total expired time. ExpiredTime = ExpiredTime + Me.TimerInterval End If ' Does the total expired time exceed the IDLEMINUTES? ExpiredMinutes = (ExpiredTime / 1000) / 60 If ExpiredMinutes >= IDLEMINUTES Then ' ...if so, then reset the expired time to zero... ExpiredTime = 0 ' ...and call the IdleTimeDetected subroutine. Call fExitApplication End If End Sub RpbertS 05-24-2001, 04:58 AM thanks for that link its really good. I have a problem however. I set the timer interval in the properties section of the form to 5000 (for testing) pasted that code into the ontimer event and Iget a sub or function not defined error. any ideas? thanks |