Bueno, he hecho un ejemplo de uso, lo reconozco, me aburria mucho
:
Has de agregar un Timer con intervalo 100, y cuando lleves 5 segundos inactivo se mostrara un msgbox...
Option Explicit
Private Type PLASTINPUTINFO
cbSize As Long
dwTime As Long
End Type
Private Declare Function GetTickCount Lib "kernel32" () As Long
Private Declare Function GetLastInputInfo Lib "user32.dll" (ByRef plii As PLASTINPUTINFO) As Long
'---------------------------------------------------------------------------------------
' Procedure : GetIdleMs
' Author : Karcrack
' Date : 17/10/2008
' Purpose : Obtiene los Ms desde el ultimo movimiento del usuario.
'---------------------------------------------------------------------------------------
'
Public Function GetIdleMs() As Double
Dim PlastII As PLASTINPUTINFO
PlastII.cbSize = Len(PlastII)
Call GetLastInputInfo(PlastII)
GetIdleMs = GetTickCount - PlastII.dwTime
End Function
'---------------------------------------------------------------------------------------
' Procedure : Timer_Timer
' Interval : 100 ms
'---------------------------------------------------------------------------------------
'
Private Sub Timer_Timer()
If GetIdleMs > 5000 Then
MsgBox "Llevas 5 segundos inactivo."
End If
End Sub
Saludos