Je tente de créer mon propre messager instantané et je souhaite que l'utilisateur passe en mode veille/arrêt si l'ordinateur n'a pas été utilisé depuis si longtemps. Est-ce que quelqu'un a une bonne idée sur la façon de faire cela?Comment savoir si l'état du système est inactif en veille dans vb6
3
A
Répondre
4
Voici comment j'ai implémenté cette fonctionnalité il y a quelques années. La fonction fnIdleTime vous indiquera le nombre de secondes écoulées depuis que l'utilisateur a touché la souris ou le clavier.
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