function SecondsIdle: Cardinal; var liInfo: TLastInputInfo; begin liInfo.cbSize := SizeOf(TLastInputInfo); GetLastInputInfo(liInfo); Result := (GetTickCount - liInfo.dwTime) div 1000; end;