|
You last visited: Today at 00:54
Advertisement
afk erkennen
Discussion on afk erkennen within the AutoIt forum part of the Coders Den category.
11/14/2012, 23:21
|
#1
|
elite*gold: 528
Join Date: Jan 2012
Posts: 2,127
Received Thanks: 2,403
|
afk erkennen
Hi, und zwar möchte ich mit AutoIt herausfinden, ob der Benutzer des Computers afk (nicht da) ist.
Wenn der Benutzer für X Sekunden/Minuten nicht da ist, dann soll eine Funktion ausgeführt werden. Wie kann ich nun herausfinden, ob der Benutzer afk ist? Und wie lange er schon afk ist?
Ich könnte ja mit _IsPressed jede Taste abfragen, aber das würde bestimmt viel CPU-Last verursachen.
Hat jemand eine Idee?
MfG
|
|
|
11/14/2012, 23:24
|
#2
|
elite*gold: 27
Join Date: May 2008
Posts: 2,768
Received Thanks: 618
|
Kommt drauf an was du unter afk verstehst es gibt einmal die möglichkeit es direkt für Skype zu machen also wenn er in Skype afk ist oder die möglich zu sehen das er garnicht da ist sprich nichts am pc mach für das zweite is es aber nötig im das prog zu schicken und nicht unter zu jubeln ^^
|
|
|
11/14/2012, 23:41
|
#3
|
elite*gold: 235
Join Date: Jan 2012
Posts: 920
Received Thanks: 377
|
Naja ich denke das einfachste wäre die Mausposition abzufragen.
Bewegt sich diese innerhalb einer bestimmten Zeit nicht aus einem Bestimmten Raum hinaus, scheint der User afk zu sein.
Edit: Hab das gerade gefunden
PHP Code:
#include <Date.au3>
HotKeySet("{ESC}", "_Quit")
$IdleMinimum = 50
While 1
$iIdle = _IdleWaitStart($IdleMinimum)
ConsoleWrite(_Now() & ' ' & @UserName & ' not active ' & _TickToTimeString($iIdle) & @CRLF)
$iIdle = _IdleWaitCommit($IdleMinimum)
ConsoleWrite(_Now() & ' ' & @UserName & ' was inactive ' & _TickToTimeString($iIdle) & @CRLF)
WEnd
Func _IdleWaitStart($idlesec)
Local $aRet, $iSave, $iTick, $LastInputInfo = DllStructCreate("uint;dword")
DllStructSetData($LastInputInfo, 1, DllStructGetSize($LastInputInfo))
DllCall("user32.dll", "int", "GetLastInputInfo", "ptr", DllStructGetPtr($LastInputInfo))
Do
Sleep(200)
$iSave = DllStructGetData($LastInputInfo, 2)
DllCall("user32.dll", "int", "GetLastInputInfo", "ptr", DllStructGetPtr($LastInputInfo))
$aRet = DllCall("kernel32.dll", "long", "GetTickCount")
Until ($aRet[0] - DllStructGetData($LastInputInfo, 2)) > $idlesec
Return $aRet[0] - DllStructGetData($LastInputInfo, 2)
EndFunc ;==>_IdleWaitStart
Func _IdleWaitCommit($idlesec)
Local $iSave, $LastInputInfo = DllStructCreate("uint;dword")
DllStructSetData($LastInputInfo, 1, DllStructGetSize($LastInputInfo))
DllCall("user32.dll", "int", "GetLastInputInfo", "ptr", DllStructGetPtr($LastInputInfo))
Do
$iSave = DllStructGetData($LastInputInfo, 2)
Sleep(200)
DllCall("user32.dll", "int", "GetLastInputInfo", "ptr", DllStructGetPtr($LastInputInfo))
Until (DllStructGetData($LastInputInfo, 2) - $iSave) > $idlesec
Return DllStructGetData($LastInputInfo, 2) - $iSave
EndFunc ;==>_IdleWaitCommit
Func _TickToTimeString($iTicks)
Local $iHours, $iMins, $iSecs, $sText = ''
_TicksToTime($iTicks, $iHours, $iMins, $iSecs)
If $iHours Then $sText = $iHours & ' hours '
If $iMins Then $sText &= $iMins & ' minutes '
If $iSecs Then $sText &= $iSecs & ' seconds'
If $sText = '' Then $sText = 'less than a second'
Return $sText
EndFunc ;==>_TickToTimeString
Func _Quit()
Exit
EndFunc ;==>_Quit
|
|
|
11/15/2012, 09:10
|
#4
|
elite*gold: 0
Join Date: Aug 2011
Posts: 263
Received Thanks: 177
|
So müsste es auch gehen denke ich:
Code:
#include <Timers.au3>
SplashTextOn("_Timer_GetIdleTime-Beispiel","Bitte 10 Sekunden warten...",300,50,-1,-1,34,'',14,800)
; Maus- oder Tastaturaktionen während dieser 10 Sekunden beeinflussen die berichtete Leerlaufzeit
Sleep(10 * 1000); 10sec
SplashOff()
Global $iIdleTime = _Timer_GetIdleTime()
MsgBox(64, "_Timer_GetIdleTime", "Leerlaufzeit = " & $iIdleTime & "ms")
|
|
|
11/16/2012, 22:58
|
#5
|
elite*gold: 0
Join Date: Oct 2012
Posts: 52
Received Thanks: 11
|
Hi, ich bin zwar kein Kenner in diesem Thema und du hast mir ja auch schon geholfen in Skype. Es gibt doch aber eine Möglichkeit, abzufragen, ob sich ein Bereich von Pixeln geändert hat. Wenn man diesen Bereich um die Maus setzt müsste man doch feststellen können, ob der User etwas tut oder eben nicht.
|
|
|
 |
Similar Threads
|
Hacker erkennen ?
04/07/2015 - WarRock - 11 Replies
Hey gibts ne möglichkeit hacker zu erkännen zb. das der name ingame rot leuchtet oder so gibs das ??
:mofo::mofo::mofo::mofo::mofo::mofo::mofo::mofo:: mofo::mofo::mofo::mofo::mofo::mofo::mofo::mofo::mo fo::mofo::mofo::mofo::mofo::mofo::mofo::mofo::mofo ::mofo::mofo:
|
[F] Lua Kommazahl erkennen
05/26/2012 - Metin2 Private Server - 1 Replies
Hey,
ich hätte da mal eine Frage bezüglich Lua.
Gibt es vorgefertigte Funktion die es einem erlaubt zu erkennen ob eine Variable eine Kommazahl oder eine natürliche Zahl ist?
|
GM's erkennen
08/17/2011 - Metin2 Private Server - 4 Replies
Hi,
wollte mal fragen ob man es irgendwie hinbekommt den client so zu verändern das man GM's die sich mit /in unsichtbar gemacht haben sehen kann.
Das intressiert mich weil ich der Meinung bin das ich machenmal vor GM's lauf, denn ich weiß das man die GM's immernoch "da" sind .. und manchmal ist lauf ich eben gegen eine Unsichtbare Mauer ^^
MfG eliteplayer123
|
lc Ger hack erkennen
05/24/2011 - Last Chaos - 6 Replies
hi,
ich habe eine frage, was die hackerkennung auf lc ger betrifft.
kann gaymigo anhand von log dateien erkennen, ob man gehackt hat, also trainer genutzt hat?
also, bezogen auf den neuen server harwin z.b.
als er gestartet ist, habe ich ein paar hacks genutzt und somit ein paar dc's, und nun nutze ich aber keine mehr. und wenn ich theoretisch 1-3ter werde bei diesem "gewinnevent", meint ihr, die prüfen das dann nach.... und wenn, können die so etwas bestimmen. waren ja nur harmlose dinge,...
|
wie erkennen gms das man bot hat
12/11/2008 - Nostale - 17 Replies
wie erkennen GMs das man bot benutzt?
|
All times are GMT +1. The time now is 00:55.
|
|