Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

当系统在规定时间内没有使用时,自动退出该系统

滨海之城  发表于:2009-05-19 18:15:16  
复制

     用ACCESS做了一个系统,因为数据库放在公司服务器上,有时候用户没有使用,没有及时退出系统,浪费了网络资源。而且也影响了系统的运行速度,所以想做一个在规定时间内没有使用系统时,就自动退出系统,释放资源。请各位帮帮忙。

 

Top
82077802 发表于:2009-05-19 19:45:22

这段代码应该可以解决这个问题的.

把内容复制到一个窗体中,只要这个窗体运行中,就可以了.代码会调用WINDOWS的函数,应可以实现了.720秒未被使用,系统将会退出,当你你也可以改为系统上锁.

Option Compare Database
Private Declare Function GetLastInputInfo Lib "user32" (plii As LASTINPUTINFO) As Boolean
Private Declare Function GetTickCount Lib "kernel32" () As Long
Private Type LASTINPUTINFO
       cbSize  As Long
       dwTime  As Long
End Type
Dim lii   As LASTINPUTINFO
Dim zjs, djs
Dim msgcount As Integer

Private Sub Form_Timer()  

'此为窗体的计时事件
 Dim mytime   As Double
  lii.cbSize = Len(lii)
  GetLastInputInfo lii
  mytime = GetTickCount - lii.dwTime
  Debug.Print mytime & "ms"
  zjs = mytime \ 1000
  djs = 7200 - zjs
  Me.Txt1 = "离系统关闭时间: " & djs
  if djs =0 then

  quit

  end if
End Sub



总记录:1篇  页次:1/1 9 1 :