Ghost21

Timer_GetIdleTime()

12 posts in this topic

$idletime = _Timer_GetIdleTime()

If $idletime >= 6000 Then

ConsoleWrite("Idle at " & @HOUR & ":" & @MIN & @SEC & @CRLF)

_UpdatedRecords()

EndIf

How do I reset idle time.? As right now I get the result of..

Idle at 12:24:35

Idle at 12:24:35

Idle at 12:24:35

Idle at 12:24:35

Idle at 12:24:36

Idle at 12:24:36

Idle at 12:24:36

Idle at 12:24:36

Idle at 12:24:36

Idle at 12:24:36

Idle at 12:24:36

Idle at 12:24:37

Idle at 12:24:37

Idle at 12:24:37

Share this post


Link to post
Share on other sites



Ghost21,

Just simulate some user input: :)

#include <Timers.au3>

HotKeySet("{ESC}", "On_Exit")
Func On_Exit()
    Exit
EndFunc   ;==>On_Exit

ConsoleWrite("Set   at " & @HOUR & ":" & @MIN & ":" & @SEC & @CRLF)

While 1

    $iIdleTime = _Timer_GetIdleTime()

    If $iIdleTime >= 5000 Then

        ConsoleWrite("Idle  at " & @HOUR & ":" & @MIN & ":" & @SEC & @CRLF)

        If $iIdleTime > 10000 Then
            MouseMove(100, 100)
            MouseMove(200, 200)
            ConsoleWrite(@CRLF & "Reset at " & @HOUR & ":" & @MIN & ":" & @SEC & @CRLF)
        EndIf

        Sleep(1000)

    EndIf

WEnd

All clear? :)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

$idletime = _Timer_GetIdleTime()
While 1
 If $idletime &gt;= 6000 Then
  $idletime = _Timer_GetIdleTime() ; this is to reset $idletime
   ConsoleWrite("Idle at " &amp; @HOUR &amp; ":" &amp; @MIN &amp; @SEC &amp; @CRLF)
   _UpdatedRecords()
  Sleep(100)
  EndIf
WEnd

I don't know if you need the While loop and the Sleep in your script, but you will if they're not already in there someplace.<br><br>M23 is probably more right than me, so you'd be better to go with his suggestion.. :)<br>

Edited by somdcomputerguy

- Bruce /*somdcomputerguy */  If you change the way you look at things, the things you look at change.

Share this post


Link to post
Share on other sites

How about without moving the mouse? As I have three screens and the program could be on all three or 2 or 1 ????

Resettign the idle ticks to zero would be the best if at all possible ?

Share this post


Link to post
Share on other sites

This kinda works but not the best answer:

$pos = MouseGetPos()

MouseMove($pos[0] + 1, $pos[1])

MouseMove($pos[0] - 1, $pos[1])

Share this post


Link to post
Share on other sites

Ghost21,

Why should the number of screens have anything to do with it? All you are doing is simulating user input - that is independent of where the app is running. :)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

Just seems like a bandaide fix. :)

Share this post


Link to post
Share on other sites

Sorry for digging out this old thread.

But I need help..

Is it possible to get the IdleTime of another user?

I want to create a service (run as SYSTEM user) which should check if any user interaction is happen.

Thank you Jack

Share this post


Link to post
Share on other sites

I don't think it's possible with legal doing. Are you from NSA?

Share this post


Link to post
Share on other sites

:-) No.

I only want to shut down (and reboot with an autologon ) a Kiosk terminal if anyone login wit his personal account and forgot it afterwards.

The script runs as a service with the SYSTEM user.

Jack

Share this post


Link to post
Share on other sites

#11 ·  Posted (edited)

Here you go guys.

#include "Timers.au3"
local $IdleTime=_Timer_GetIdleTime()
MsgBox(0,"Current Idle","The current Idle Time is "&$IdleTime&"."&@CRLF&"This box will automatically close in 5 seconds.",5)
Send("{asc 0}");sends nothing but still resets the Timer. ASC 0 is the Null Character. Reference: http://www.asciitable.com/
local $IdleTime2=_Timer_GetIdleTime()
MsgBox(0,"Current Idle","The current Idle Time is "&$IdleTime2&".")

Also, I don't think you can do what you need to do on the SYSTEM account. I would just run it as the user that logs in. To do that, add a registry key (Reg_SZ) at HKLM\Software\Microsoft\Windows\CurrentVersion\Run 

Edited by BetaLeaf

False Positive Reporter - Mass email all anti virus vendors with an attachment of your program for fast and easy whitelisting.

PortableApps.com App Creation Wizard  - A simple GUI-based Wizard for creating PortableApps.

SoundBoard - Play any song or sound you want at the press of a hotkey.

My GitHub Page: https://github.com/BetaLeaf

Share this post


Link to post
Share on other sites

Thank you :-) I caneled the requirement to shutdown the PC also if nobody logged in and start the skript as Betaleaf said.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now