2010-04-07 5 views

Répondre

4

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.

+0

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

+0

Merci pour le lien. – PowerUser

Questions connexes