我正在尝试创建自己的即时消息,并希望用户进入空闲/离开模式,如果计算机长时间没有使用的话。有没有人对如何做到这一点有很好的想法?
答案 0 :(得分:4)
这是几年前我实现此功能的方法。函数fnIdleTime将告诉您自用户触摸鼠标或键盘以来的秒数。
Public Declare Function timeGetTime Lib "WINMM.DLL" () As Long
Private Type LASTINPUTINFO
cbSize As Long
dwTime As Long
End Type
Public Declare Function GetLastInputInfo Lib "user32.dll" (plii As LASTINPUTINFO) As Long
Public Function fnIdleTime() As Long
Dim lii As LASTINPUTINFO
lii.cbSize = Len(lii)
If (GetLastInputInfo(lii) > 0) Then
fnIdleTime = (timeGetTime - lii.dwTime) \ 1000
End If
End Function