Declare Function GetLastInputInfo Lib "user32" (plii As Any) As Long
GetLastInputInfo возвращает время, прошедшее с последнего нажатия клавиатуры или мыши.
В случае ошибки возвращается 0. В успешном случае возвращается ненулевое значение
Private Sub Command1_Click() Timer1.Enabled = Not Timer1.Enabled Select Case Timer1.Enabled Case True Command1.Caption = "Стоп" Case False Command1.Caption = "Старт" End Select End Sub Private Sub Form_Load() Command1.Caption = "Стоп" Timer1.Interval = 10 Timer1.Enabled = True Label1.Caption = "Простой системы (сек):" End Sub Private Sub Form_Unload(Cancel As Integer) Timer1.Enabled = False End Sub Private Sub Timer1_Timer() Dim lii As LASTINPUTINFO lii.cbSize = Len(lii) Call GetLastInputInfo(lii) With Label1 .Caption = "Простой системы (сек): " & FormatNumber((GetTickCount() - lii.dwTime) / 1000, 2) .Refresh End With End Sub