J'ai utilisé ce qui suit pour obtenir la solution.
Private Declare Function GetTickCount Lib "kernel32"() As Long
Private Declare Function GetLastInputInfo Lib "user32" (plii As Any) As Long
Private Type LastInputInformation
cbSize As Long
dwTime As Long
End Type
Public Function GetUsersIdleTime() As Long
Dim lii As LastInputInformation
lii.cbSize = Len(lii)
Call GetLastInputInfo(lii)
GetUsersIdleTime = FormatNumber((GetTickCount() - lii.dwTime)/1000, 2)
End Function
Il y a d'autres parties du système qui peut être inactif comme,
- CPU
- disque
- réseau
- D'autres dispositifs
Pour en savoir plus en ce qui concerne la performance et d'autres types de ralenti voir ce SO post here.
Ceci est un peu au-delà de la portée de la question, mais une affiche bienveillante peut-elle expliquer ce qu'est le «temps d'inactivité»? Cela semble utile. – PowerUser
Merci pour le lien. – PowerUser